]> spindle.queued.net Git - midori/commitdiff
Take special care of spaces in search strings
authorChristian Dywan <christian@twotoasts.de>
Fri, 21 Nov 2008 01:44:03 +0000 (02:44 +0100)
committerChristian Dywan <christian@twotoasts.de>
Fri, 21 Nov 2008 01:44:03 +0000 (02:44 +0100)
midori/sokoke.c
tests/magic-uri.c

index b06206733783edd33d7db61bb939e1ba4354f581..7ea9b830c3546a9f2ed8584940142160d7b29985 100644 (file)
@@ -125,7 +125,8 @@ sokoke_magic_uri (const gchar* uri,
         {
             search = NULL;
             if (!(parts[1][1] == '\0' && !g_ascii_isalpha (parts[1][0])))
-                search = g_strconcat ("http://", uri, NULL);
+                if (!strchr (parts[0], ' ') && !strchr (parts[1], ' '))
+                    search = g_strconcat ("http://", uri, NULL);
             g_free (parts);
             if (search)
                 return search;
index 5623f20027c9415ee0f2e44bd5fdd682a8085ed9..18bfa86eab06aada4dca2d234151b96ec492a805 100644 (file)
@@ -44,6 +44,7 @@ main (int    argc,
       return 1; \
     } \
   g_free (uri)
+#define SM "http://www.searchmash.com/search/"
 
     test_input ("ftp://ftp.mozilla.org", "ftp://ftp.mozilla.org");
     test_input ("ftp://ftp.mozilla.org/pub", "ftp://ftp.mozilla.org/pub");
@@ -61,8 +62,8 @@ main (int    argc,
     test_input ("localhost:8000", "http://localhost:8000");
     test_input ("192.168.1.1", "http://192.168.1.1");
     test_input ("192.168.1.1:8000", "http://192.168.1.1:8000");
-    test_input ("sm midori", "http://www.searchmash.com/search/midori");
-    test_input ("sm cats dogs", "http://www.searchmash.com/search/cats dogs");
+    test_input ("sm midori", SM "midori");
+    test_input ("sm cats dogs", SM "cats dogs");
     test_input ("dict midori", NULL);
     test_input ("cats", NULL);
     test_input ("cats dogs", NULL);
@@ -74,7 +75,14 @@ main (int    argc,
     test_input ("search:twotoasts.de", NULL);
     test_input ("g cache:127.0.0.1", NULL);
     test_input ("g cache:127.0.0.1/foo", NULL);
-    test_input ("g cache:twotoats.de/foo", NULL);
+    test_input ("g cache:twotoasts.de/foo", NULL);
+    test_input ("sm cache:127.0.0.1", SM "cache:127.0.0.1");
+    test_input ("sm cache:127.0.0.1/foo", SM "cache:127.0.0.1/foo");
+    test_input ("sm cache:twotoasts.de/foo", SM "cache:twotoasts.de/foo");
+    test_input ("de.po verbose", NULL);
+    test_input ("verbose de.po", NULL);
+    test_input ("g de.po verbose", NULL);
+    test_input ("sm de.po verbose", SM "de.po verbose");
 
     return 0;
 }