From 773f330774db50ea82d2eb2e59b4250d67d7e4dc Mon Sep 17 00:00:00 2001 From: John Firebaugh Date: Fri, 17 Feb 2017 11:17:26 -0800 Subject: [PATCH] [core] Ensure that context resources are destroyed before context is destroyed --- include/mbgl/map/backend.hpp | 3 +-- platform/default/mbgl/gl/headless_backend.cpp | 4 ++++ 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/include/mbgl/map/backend.hpp b/include/mbgl/map/backend.hpp index a7c78cf03..4a43921c0 100644 --- a/include/mbgl/map/backend.hpp +++ b/include/mbgl/map/backend.hpp @@ -41,8 +41,7 @@ protected: virtual void activate() = 0; virtual void deactivate() = 0; -private: - const std::unique_ptr context; + std::unique_ptr context; friend class BackendScope; }; diff --git a/platform/default/mbgl/gl/headless_backend.cpp b/platform/default/mbgl/gl/headless_backend.cpp index 61225d54a..c105fd6b8 100644 --- a/platform/default/mbgl/gl/headless_backend.cpp +++ b/platform/default/mbgl/gl/headless_backend.cpp @@ -1,5 +1,7 @@ #include #include +#include +#include #include #include @@ -15,6 +17,8 @@ HeadlessBackend::HeadlessBackend(std::shared_ptr display_) } HeadlessBackend::~HeadlessBackend() { + BackendScope scope(*this); + context.reset(); } void HeadlessBackend::activate() {