diff --git a/src/mbgl/tile/vector_tile.cpp b/src/mbgl/tile/vector_tile.cpp index aedb70389..25314c114 100644 --- a/src/mbgl/tile/vector_tile.cpp +++ b/src/mbgl/tile/vector_tile.cpp @@ -96,6 +96,9 @@ std::unordered_map VectorTileFeature::getProperties() const { const auto & end_itr = tags_iter.second; while (start_itr != end_itr) { uint32_t tag_key = static_cast(*start_itr++); + if (start_itr == end_itr) { + throw std::runtime_error("uneven number of feature tag ids"); + } uint32_t tag_val = static_cast(*start_itr++); properties[layer.keys.at(tag_key)] = layer.values.at(tag_val); }