summaryrefslogtreecommitdiff
path: root/src/map/tile_parser.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/map/tile_parser.cpp')
-rw-r--r--src/map/tile_parser.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/map/tile_parser.cpp b/src/map/tile_parser.cpp
index 97b071a163..e32a6068fc 100644
--- a/src/map/tile_parser.cpp
+++ b/src/map/tile_parser.cpp
@@ -66,10 +66,11 @@ void TileParser::parseStyleLayers(std::shared_ptr<StyleLayerGroup> group) {
if (layer_desc->isBackground()) {
// background is a special, fake bucket
continue;
- } else if (layer_desc->layers) {
+ } else if (layer_desc->layers && layer_desc->type != StyleLayerType::Raster) {
// This is a layer group.
parseStyleLayers(layer_desc->layers);
- } else if (layer_desc->bucket) {
+ }
+ if (layer_desc->bucket) {
// This is a singular layer. Check if this bucket already exists. If not,
// parse this bucket.
auto bucket_it = tile.buckets.find(layer_desc->bucket->name);
@@ -157,4 +158,4 @@ std::unique_ptr<Bucket> TileParser::createSymbolBucket(const VectorTileLayer& la
std::unique_ptr<SymbolBucket> bucket = std::make_unique<SymbolBucket>(symbol, collision);
bucket->addFeatures(layer, filter, tile.id, *spriteAtlas, *sprite, *glyphAtlas, *glyphStore);
return obsolete() ? nullptr : std::move(bucket);
-}
+} \ No newline at end of file