summaryrefslogtreecommitdiff
path: root/navit/maptool/boundaries.c
diff options
context:
space:
mode:
authormdankov <mdankov@ffa7fe5e-494d-0410-b361-a75ebd5db220>2013-01-03 19:24:02 +0000
committermdankov <mdankov@ffa7fe5e-494d-0410-b361-a75ebd5db220>2013-01-03 19:24:02 +0000
commit77d29dceb0d657d3d75ee7febffaaea57acaf330 (patch)
treebcea0bb736e817be327c5d69ee7958911435362c /navit/maptool/boundaries.c
parent207b33905ed857174d71ad204a1b3fda180587d5 (diff)
downloadnavit-77d29dceb0d657d3d75ee7febffaaea57acaf330.tar.gz
Fix:core:Consider each member way of border relation only once, even if it has duplicate osm->binfile item mapping.
git-svn-id: http://svn.code.sf.net/p/navit/code/trunk/navit@5335 ffa7fe5e-494d-0410-b361-a75ebd5db220
Diffstat (limited to 'navit/maptool/boundaries.c')
-rw-r--r--navit/maptool/boundaries.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/navit/maptool/boundaries.c b/navit/maptool/boundaries.c
index 033e81149..418f719b8 100644
--- a/navit/maptool/boundaries.c
+++ b/navit/maptool/boundaries.c
@@ -59,7 +59,10 @@ process_boundaries_member(void *func_priv, void *relation_priv, struct item_bin
{
struct boundary *b=relation_priv;
enum geom_poly_segment_type role=(long)member_priv;
- b->segments=g_list_prepend(b->segments,item_bin_to_poly_segment(member, role));
+ int *dup;
+ dup=item_bin_get_attr(member,attr_duplicate,NULL);
+ if(!dup || *dup==0)
+ b->segments=g_list_prepend(b->segments,item_bin_to_poly_segment(member, role));
}
static GList *