diff options
author | Mikhail Pozdnyakov <mikhail.pozdnyakov@mapbox.com> | 2019-06-27 17:19:53 +0300 |
---|---|---|
committer | Mikhail Pozdnyakov <mikhail.pozdnyakov@mapbox.com> | 2019-07-02 16:05:09 +0300 |
commit | affb21a61248223c81c18f37fb7e2ae7d0ec76a4 (patch) | |
tree | a7766440e4a14f9ff4e23ee928d5a0ce57d2484f /src/mbgl/tile/geometry_tile.cpp | |
parent | c1445913220023fdaf8ec5960eb6cba27c348864 (diff) | |
download | qtlocation-mapboxgl-affb21a61248223c81c18f37fb7e2ae7d0ec76a4.tar.gz |
[core] Geometry tile updates layer render data if its constants mask remains
Thus, we do not have to wait for tile update completion in case
the updated properties have the same constants mask, i.e. fit
the existing bucket.
Diffstat (limited to 'src/mbgl/tile/geometry_tile.cpp')
-rw-r--r-- | src/mbgl/tile/geometry_tile.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/mbgl/tile/geometry_tile.cpp b/src/mbgl/tile/geometry_tile.cpp index 7a7b7cb770..1bc7646d1e 100644 --- a/src/mbgl/tile/geometry_tile.cpp +++ b/src/mbgl/tile/geometry_tile.cpp @@ -212,13 +212,14 @@ const LayerRenderData* GeometryTile::getLayerRenderData(const style::Layer::Impl return that->getMutableLayerRenderData(layerImpl); } -bool GeometryTile::updateLayerProperties(const Immutable<style::LayerProperties>& layerProperties) { +bool GeometryTile::layerPropertiesUpdated(const Immutable<style::LayerProperties>& layerProperties) { LayerRenderData* renderData = getMutableLayerRenderData(*layerProperties->baseImpl); if (!renderData) { return false; } - if (renderData->layerProperties != layerProperties) { + if (renderData->layerProperties != layerProperties && + renderData->layerProperties->constantsMask() == layerProperties->constantsMask()) { renderData->layerProperties = layerProperties; } |