From 8bce06169135da839682c23ac345660d9cfa53ca Mon Sep 17 00:00:00 2001 From: karenzshea Date: Mon, 27 Nov 2017 18:31:19 +0100 Subject: [PATCH] check empty name string in sliproad handler --- src/extractor/guidance/sliproad_handler.cpp | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/extractor/guidance/sliproad_handler.cpp b/src/extractor/guidance/sliproad_handler.cpp index c2290327c..644a088c2 100644 --- a/src/extractor/guidance/sliproad_handler.cpp +++ b/src/extractor/guidance/sliproad_handler.cpp @@ -474,7 +474,8 @@ operator()(const NodeID /*nid*/, const EdgeID source_edge_id, Intersection inter // Name mismatch: check roads at `c` and `d` for same name const auto name_mismatch = [&](const NameID road_name_id) { - const auto unnamed = road_name_id == EMPTY_NAMEID; + const auto &road_name = name_table.GetNameForID(road_name_id).to_string(); + const auto unnamed = road_name.empty(); return unnamed || util::guidance::requiresNameAnnounced(road_name_id, // @@ -501,9 +502,11 @@ operator()(const NodeID /*nid*/, const EdgeID source_edge_id, Intersection inter .name_id; const auto &sliproad_annotation = node_data_container.GetAnnotation(sliproad_edge_data.annotation_data); + const auto &sliproad_name = name_table.GetNameForID(sliproad_annotation.name_id).to_string(); + const auto &main_road_name = name_table.GetNameForID(main_road_name_id).to_string(); + const auto &candidate_road_name = name_table.GetNameForID(candidate_data.name_id).to_string(); if (!sliproad_edge_data.flags.road_classification.IsLinkClass() && - sliproad_annotation.name_id != EMPTY_NAMEID && main_road_name_id != EMPTY_NAMEID && - candidate_data.name_id != EMPTY_NAMEID && + !sliproad_name.empty() && !main_road_name.empty() && !candidate_road_name.empty() && util::guidance::requiresNameAnnounced(main_road_name_id, sliproad_annotation.name_id, name_table,