diff options
author | Minh Nguyễn <mxn@1ec5.org> | 2016-03-10 16:04:18 -0800 |
---|---|---|
committer | Minh Nguyễn <mxn@1ec5.org> | 2016-03-10 17:14:14 -0800 |
commit | ee20fd8fd8912faa7662e4ea61aaaf9368af4048 (patch) | |
tree | 4116c8fe8681f773db432cf4d7e2b89caad134b6 | |
parent | 7fa3b92429185eb3749c9f547839712c8a0faf2b (diff) | |
download | qtlocation-mapboxgl-ee20fd8fd8912faa7662e4ea61aaaf9368af4048.tar.gz |
[ios, osx] Avoid unregistering observer for invalid task
-rw-r--r-- | platform/darwin/src/MGLOfflineTask.mm | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/platform/darwin/src/MGLOfflineTask.mm b/platform/darwin/src/MGLOfflineTask.mm index 4698a492fe..d105218ed7 100644 --- a/platform/darwin/src/MGLOfflineTask.mm +++ b/platform/darwin/src/MGLOfflineTask.mm @@ -66,8 +66,10 @@ private: } - (void)dealloc { - mbgl::DefaultFileSource *mbglFileSource = [[MGLOfflineStorage sharedOfflineStorage] mbglFileSource]; - mbglFileSource->setOfflineRegionObserver(*_mbglOfflineRegion, nullptr); + if (_mbglOfflineRegion && _state != MGLOfflineTaskStateInvalid) { + mbgl::DefaultFileSource *mbglFileSource = [[MGLOfflineStorage sharedOfflineStorage] mbglFileSource]; + mbglFileSource->setOfflineRegionObserver(*_mbglOfflineRegion, nullptr); + } } - (id <MGLOfflineRegion>)region { |