]> spindle.queued.net Git - midori/commitdiff
Fix crash for URIs with an invalid hostname and without a path
authorEnrico Tröger <enrico.troeger@uvena.de>
Fri, 15 May 2009 16:58:57 +0000 (18:58 +0200)
committerChristian Dywan <christian@twotoasts.de>
Fri, 15 May 2009 16:58:57 +0000 (18:58 +0200)
midori/sokoke.c
tests/magic-uri.c

index 552e025c501df8fbde2edecc5be965d6b46927ae..2909821c9147c71dc487c60769ad486b371dac0c 100644 (file)
@@ -222,6 +222,8 @@ sokoke_idn_to_punycode (gchar* uri)
             g_utf8_strncpy (buffer, hostname, offset);
             hostname = buffer;
         }
+        else
+            hostname = g_strdup (hostname);
     }
     else
         hostname = g_strdup (uri);
index b8fbe445b74392808a948025dab197ad545ccb8e..10f45e8f5ab417b30787d88dfc0df672b56357f7 100644 (file)
@@ -62,6 +62,7 @@ magic_uri_uri (void)
     test_input ("http://example.com", "http://example.com");
     test_input ("example.com", "http://example.com");
     test_input ("example.com", "http://example.com");
+    test_input ("www.google..com", "http://www.google..com");
     test_input ("/home/user/midori.html", "file:///home/user/midori.html");
     a = g_get_current_dir ();
     b = g_strconcat ("file://", a, G_DIR_SEPARATOR_S, "magic-uri.c", NULL);
@@ -139,6 +140,7 @@ magic_uri_search (void)
     test_input ("g conference \"April 2, 7:00 am\"", NULL);
     test_input ("max@mustermann.de", NULL);
     test_input ("g max@mustermann.de", NULL);
+    test_input ("g inurl:http://twotoasts.de bug", NULL);
 }
 
 static void