summaryrefslogtreecommitdiff
path: root/navit/search.c
diff options
context:
space:
mode:
authormartin-s <martin-s@ffa7fe5e-494d-0410-b361-a75ebd5db220>2012-03-13 15:59:10 +0000
committermartin-s <martin-s@ffa7fe5e-494d-0410-b361-a75ebd5db220>2012-03-13 15:59:10 +0000
commit127705b6a6b82f6dd7633887f97503bf0c9ca584 (patch)
tree67916efbc1fe9f9faa1f32ba1f3ff24679f575a6 /navit/search.c
parentb4bc9124c5fcd4b46ef7879cfc005968cd10feaf (diff)
downloadnavit-127705b6a6b82f6dd7633887f97503bf0c9ca584.tar.gz
Fix:Core:Implementet unique for street and housenumber, fixed missing street name in search results
git-svn-id: http://svn.code.sf.net/p/navit/code/trunk/navit@4974 ffa7fe5e-494d-0410-b361-a75ebd5db220
Diffstat (limited to 'navit/search.c')
-rw-r--r--navit/search.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/navit/search.c b/navit/search.c
index cf016e86e..734f021e2 100644
--- a/navit/search.c
+++ b/navit/search.c
@@ -728,6 +728,8 @@ search_list_get_unique(struct search_list *this_, char *unique)
struct search_list_level *le=&this_->levels[level];
struct search_list_country *slc;
struct search_list_town *slt;
+ struct search_list_street *sls;
+ struct search_list_house_number *slh;
char *retf=NULL,*ret=NULL;
char *strings[4]={NULL,};
char *search=g_utf8_casefold(unique?unique:le->attr->u.str,-1);
@@ -752,6 +754,18 @@ search_list_get_unique(struct search_list *this_, char *unique)
for (i = 0 ; i < 3 ; i++)
strings[i]=linguistics_expand_special(name, i);
break;
+ case 2:
+ sls=l->data;
+ name=sls->name;
+ for (i = 0 ; i < 3 ; i++)
+ strings[i]=linguistics_expand_special(name, i);
+ break;
+ case 3:
+ slh=l->data;
+ name=slh->house_number;
+ for (i = 0 ; i < 3 ; i++)
+ strings[i]=linguistics_expand_special(name, i);
+ break;
default:
dbg(0,"entry\n");
}
@@ -966,10 +980,12 @@ search_list_get_result(struct search_list *this_)
this_->result.country=this_->result.town->common.parent;
this_->result.c=this_->result.house_number->common.c;
+#if 0
if(!has_street_name) {
static struct search_list_street null_street;
this_->result.street=&null_street;
}
+#endif
}
if (p)
{