diff options
Diffstat (limited to 'src/mbgl/layout/merge_lines.cpp')
-rw-r--r-- | src/mbgl/layout/merge_lines.cpp | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/mbgl/layout/merge_lines.cpp b/src/mbgl/layout/merge_lines.cpp index 807ecb868f..2a3afa42b2 100644 --- a/src/mbgl/layout/merge_lines.cpp +++ b/src/mbgl/layout/merge_lines.cpp @@ -57,12 +57,14 @@ void mergeLines(std::vector<SymbolFeature>& features) { SymbolFeature& feature = features[k]; GeometryCollection& geometry = feature.geometry; - if (!feature.text || geometry.empty() || geometry[0].empty()) { + if (!feature.formattedText || geometry.empty() || geometry[0].empty()) { continue; } + + // TODO: Key should include formatting options (see https://github.com/mapbox/mapbox-gl-js/issues/3645) - const size_t leftKey = getKey(*feature.text, geometry[0].front()); - const size_t rightKey = getKey(*feature.text, geometry[0].back()); + const size_t leftKey = getKey(feature.formattedText->rawText(), geometry[0].front()); + const size_t rightKey = getKey(feature.formattedText->rawText(), geometry[0].back()); const auto left = rightIndex.find(leftKey); const auto right = leftIndex.find(rightKey); @@ -75,7 +77,7 @@ void mergeLines(std::vector<SymbolFeature>& features) { leftIndex.erase(leftKey); rightIndex.erase(rightKey); - rightIndex[getKey(*feature.text, features[i].geometry[0].back())] = i; + rightIndex[getKey(feature.formattedText->rawText(), features[i].geometry[0].back())] = i; } else if (left != rightIndex.end()) { // found mergeable line adjacent to the start of the current line, merge |