katze_array_find_token may yield token without keywords

Also adapt the magic uri test.
This commit is contained in:
Christian Dywan 2012-02-29 22:58:16 +01:00
parent df8284f650
commit 7e61fce9ca
2 changed files with 15 additions and 15 deletions

View file

@ -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);
}

View file

@ -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] : "");
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);