summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--platform/qt/src/qmapboxgl.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/platform/qt/src/qmapboxgl.cpp b/platform/qt/src/qmapboxgl.cpp
index 49b0dc021c..a3ec1bf0e4 100644
--- a/platform/qt/src/qmapboxgl.cpp
+++ b/platform/qt/src/qmapboxgl.cpp
@@ -103,7 +103,7 @@ std::shared_ptr<mbgl::DefaultFileSource> sharedDefaultFileSource(const QMapboxGL
// Purge entries no longer in use.
for (auto it = fileSources.begin(); it != fileSources.end();) {
- if (!it->second.lock()) {
+ if (it->second.expired()) {
it = fileSources.erase(it);
} else {
++it;
@@ -115,7 +115,10 @@ std::shared_ptr<mbgl::DefaultFileSource> sharedDefaultFileSource(const QMapboxGL
// Return an existing FileSource if available.
auto sharedFileSource = fileSources.find(key);
if (sharedFileSource != fileSources.end()) {
- return sharedFileSource->second.lock();
+ auto lockedSharedFileSource = sharedFileSource->second.lock();
+ if (lockedSharedFileSource) {
+ return lockedSharedFileSource;
+ }
}
// New path, create a new FileSource.