summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/mbgl/map/map.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/mbgl/map/map.cpp b/src/mbgl/map/map.cpp
index 0863c8aad6..7bc91ed48c 100644
--- a/src/mbgl/map/map.cpp
+++ b/src/mbgl/map/map.cpp
@@ -129,8 +129,15 @@ void Map::start(bool startPaused) {
// Remove all of these to make sure they are destructed in the correct thread.
style.reset();
+
+ // Since we don't have a stylesheet anymore, this will disable all Sources and cancel
+ // their associated requests.
+ updateSources();
+ assert(activeSources.empty());
+
+ // It's now safe to destroy/join the workers since there won't be any more callbacks that
+ // could dispatch to the worker pool.
workers.reset();
- activeSources.clear();
terminating = true;