diff options
author | Mikhail Pozdnyakov <mikhail.pozdnyakov@mapbox.com> | 2019-07-16 15:41:13 +0300 |
---|---|---|
committer | Mikhail Pozdnyakov <mikhail.pozdnyakov@mapbox.com> | 2019-07-22 10:41:03 +0300 |
commit | ff42997b01ee8034338b3ff1591f35d1e6d782c1 (patch) | |
tree | c06ca14e7c25ccbcd4744f7a28da24d806c53e66 /src/mbgl/renderer/sources/render_vector_source.cpp | |
parent | bbe7679bc66ac6848d3b38931a3065de1b7a30ae (diff) | |
download | qtlocation-mapboxgl-ff42997b01ee8034338b3ff1591f35d1e6d782c1.tar.gz |
[core] Avoid unneeded tile sets copying at sources code
Diffstat (limited to 'src/mbgl/renderer/sources/render_vector_source.cpp')
-rw-r--r-- | src/mbgl/renderer/sources/render_vector_source.cpp | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/mbgl/renderer/sources/render_vector_source.cpp b/src/mbgl/renderer/sources/render_vector_source.cpp index 3990cb86fa..7035be9cf2 100644 --- a/src/mbgl/renderer/sources/render_vector_source.cpp +++ b/src/mbgl/renderer/sources/render_vector_source.cpp @@ -25,21 +25,21 @@ void RenderVectorSource::update(Immutable<style::Source::Impl> baseImpl_, enabled = needsRendering; - optional<Tileset> _tileset = impl().getTileset(); + const optional<Tileset>& implTileset = impl().tileset; // In Continuous mode, keep the existing tiles if the new tileset is not // yet available, thus providing smart style transitions without flickering. // In other modes, allow clearing the tile pyramid first, before the early // return in order to avoid render tests being flaky. - bool canUpdateTileset = _tileset || parameters.mode != MapMode::Continuous; - if (canUpdateTileset && tileset != _tileset) { - tileset = _tileset; + bool canUpdateTileset = implTileset || parameters.mode != MapMode::Continuous; + if (canUpdateTileset && tileset != implTileset) { + tileset = implTileset; // TODO: this removes existing buckets, and will cause flickering. // Should instead refresh tile data in place. tilePyramid.clearAll(); } - if (!_tileset) { + if (!implTileset) { return; } |