From: Christian Dywan Date: Wed, 29 Feb 2012 21:58:16 +0000 (+0100) Subject: katze_array_find_token may yield token without keywords X-Git-Url: https://spindle.queued.net/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=7e61fce9caa0a81782dc9b3f8f2bc089da34c034;p=midori katze_array_find_token may yield token without keywords Also adapt the magic uri test. --- diff --git a/midori/midori-browser.c b/midori/midori-browser.c index a121689f..c1e90c84 100644 --- a/midori/midori-browser.c +++ b/midori/midori-browser.c @@ -3676,7 +3676,11 @@ _action_location_submit_uri (GtkAction* action, if (browser->search_engines && (item = katze_array_find_token (browser->search_engines, uri))) { - keywords = strchr (uri, ' ') + 1; + keywords = strchr (uri, ' '); + if (keywords != NULL) + keywords++; + else + keywords = ""; search_uri = katze_item_get_uri (item); } diff --git a/tests/magic-uri.c b/tests/magic-uri.c index d596dd52..46dbddac 100644 --- a/tests/magic-uri.c +++ b/tests/magic-uri.c @@ -41,26 +41,22 @@ test_input (const gchar* input, uri = sokoke_magic_uri (input); if (!uri) { - gchar** parts; - gchar* keywords = NULL; + const gchar* keywords = NULL; const gchar* search_uri = NULL; + KatzeItem* item; /* Do we have a keyword and a string? */ - parts = g_strsplit (input, " ", 2); - if (parts[0]) + if ((item = katze_array_find_token (search_engines, input))) { - KatzeItem* item; - if ((item = katze_array_find_token (search_engines, parts[0]))) - { - keywords = g_strdup (parts[1] ? parts[1] : ""); - search_uri = katze_item_get_uri (item); - } + keywords = strchr (input, ' '); + if (keywords != NULL) + keywords++; + else + keywords = ""; + search_uri = katze_item_get_uri (item); } - g_strfreev (parts); - - uri = keywords ? midori_uri_for_search (search_uri, keywords) : NULL; - g_free (keywords); + uri = search_uri ? midori_uri_for_search (search_uri, keywords) : NULL; } katze_assert_str_equal (input, uri, expected); g_free (uri);