diff options
Diffstat (limited to 'src/mbgl/renderer/layers/render_raster_layer.cpp')
-rw-r--r-- | src/mbgl/renderer/layers/render_raster_layer.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/mbgl/renderer/layers/render_raster_layer.cpp b/src/mbgl/renderer/layers/render_raster_layer.cpp index ecaee2985c..82d135b9ef 100644 --- a/src/mbgl/renderer/layers/render_raster_layer.cpp +++ b/src/mbgl/renderer/layers/render_raster_layer.cpp @@ -77,12 +77,14 @@ static std::array<float, 3> spinWeights(float spin) { void RenderRasterLayer::prepare(const LayerPrepareParameters& params) { renderTiles = params.source->getRenderTiles(); imageData = params.source->getImageRenderData(); - assert(renderTiles || imageData); + // It is possible image data is not available until the source loads it. + assert(renderTiles || imageData || !params.source->isEnabled()); } void RenderRasterLayer::render(PaintParameters& parameters) { - if (parameters.pass != RenderPass::Translucent) + if (parameters.pass != RenderPass::Translucent || (!renderTiles && !imageData)) { return; + } const auto& evaluated = static_cast<const RasterLayerProperties&>(*evaluatedProperties).evaluated; RasterProgram::Binders paintAttributeData{ evaluated, 0 }; |