diff options
author | Ivo van Dongen <info@ivovandongen.nl> | 2017-09-19 10:29:51 +0300 |
---|---|---|
committer | Ivo van Dongen <ivovandongen@users.noreply.github.com> | 2017-09-22 23:33:56 +0300 |
commit | 97a010cc9bde2eaa2cc94ca844fe9546347d37c2 (patch) | |
tree | cfb1750b338022a8cd825de12f54670b1b981258 /src/mbgl/renderer/layers/render_custom_layer.cpp | |
parent | b0c06c764b0f9900dac3707dc5af398b41b6aa5b (diff) | |
download | qtlocation-mapboxgl-97a010cc9bde2eaa2cc94ca844fe9546347d37c2.tar.gz |
[core] custom layer - add contextLost callback
- optional callback method that can be used to do cleanup when the context has been lost before re-initialisation
Diffstat (limited to 'src/mbgl/renderer/layers/render_custom_layer.cpp')
-rw-r--r-- | src/mbgl/renderer/layers/render_custom_layer.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/mbgl/renderer/layers/render_custom_layer.cpp b/src/mbgl/renderer/layers/render_custom_layer.cpp index 3d19f5ef46..7ece3970da 100644 --- a/src/mbgl/renderer/layers/render_custom_layer.cpp +++ b/src/mbgl/renderer/layers/render_custom_layer.cpp @@ -16,8 +16,12 @@ RenderCustomLayer::RenderCustomLayer(Immutable<style::CustomLayer::Impl> _impl) RenderCustomLayer::~RenderCustomLayer() { assert(BackendScope::exists()); - if (initialized && !contextDestroyed && impl().deinitializeFn) { - impl().deinitializeFn(impl().context); + if (initialized) { + if (contextDestroyed && impl().contextLostFn ) { + impl().contextLostFn(impl().context); + } else if (!contextDestroyed && impl().deinitializeFn) { + impl().deinitializeFn(impl().context); + } } } |