From 25dde0e87b7a910630a712825b6d8e0fbb5660b3 Mon Sep 17 00:00:00 2001 From: horwitz Date: Thu, 18 Mar 2010 08:57:12 +0000 Subject: [PATCH] Fix:Maptool:Fix coverity bug #44. Dereferencing NULL value "wi" git-svn-id: https://navit.svn.sourceforge.net/svnroot/navit/trunk@3044 ffa7fe5e-494d-0410-b361-a75ebd5db220 --- navit/navit/gui/internal/gui_internal.c | 30 ++++++++++++++++-------------- 1 file changed, 16 insertions(+), 14 deletions(-) diff --git a/navit/navit/gui/internal/gui_internal.c b/navit/navit/gui/internal/gui_internal.c index f873e15..5a5c73e 100644 --- a/navit/navit/gui/internal/gui_internal.c +++ b/navit/navit/gui/internal/gui_internal.c @@ -2775,22 +2775,24 @@ gui_internal_search_idle(struct gui_priv *this, char *wm_name, struct widget *se struct widget *menu=g_list_last(this->root.children)->data; struct widget *wi=gui_internal_find_widget(menu, NULL, STATE_EDIT); - if (! strcmp(wm_name,"Town")) - trunk_name = g_strrstr(res->town->common.town_name, wi->text); - if (! strcmp(wm_name,"Street")) - trunk_name = g_strrstr(name=res->street->name, wi->text); - - if (trunk_name) { - char next_char = trunk_name[strlen(wi->text)]; - int i; - int len = strlen(possible_keys); - for(i = 0; (itext)]; - possible_keys[len+1]='\0'; + if (wi) { + if (! strcmp(wm_name,"Town")) + trunk_name = g_strrstr(res->town->common.town_name, wi->text); + if (! strcmp(wm_name,"Street")) + trunk_name = g_strrstr(name=res->street->name, wi->text); + + if (trunk_name) { + char next_char = trunk_name[strlen(wi->text)]; + int i; + int len = strlen(possible_keys); + for(i = 0; (itext)]; + possible_keys[len+1]='\0'; + } + dbg(1,"%s %s possible_keys:%s \n", wi->text, res->town->common.town_name, possible_keys); } - dbg(1,"%s %s possible_keys:%s \n", wi->text, res->town->common.town_name, possible_keys); } } -- 2.7.4