From 104091cd9302c1377b9e4ffb56fc47fac36a2024 Mon Sep 17 00:00:00 2001 From: Ansis Brammanis Date: Mon, 8 Apr 2019 16:28:55 -0400 Subject: fix firing onStyleImageMissing after sprite has loaded (#14369) --- src/mbgl/renderer/image_manager.cpp | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) (limited to 'src') diff --git a/src/mbgl/renderer/image_manager.cpp b/src/mbgl/renderer/image_manager.cpp index f8f3e30f81..25acd6bd25 100644 --- a/src/mbgl/renderer/image_manager.cpp +++ b/src/mbgl/renderer/image_manager.cpp @@ -90,19 +90,20 @@ void ImageManager::getImages(ImageRequestor& requestor, ImageRequestPair&& pair) // if all icons are available. If any are missing, call `onStyleImageMissing` // to give the user a chance to provide the icon. If they are not provided // by the next frame we'll assume they are permanently missing. - bool hasAllDependencies = true; if (!isLoaded()) { + bool hasAllDependencies = true; for (const auto& dependency : pair.first) { if (images.find(dependency.first) == images.end()) { hasAllDependencies = false; + break; } } - } - if (hasAllDependencies) { - notify(requestor, pair); - } else if (!isLoaded()) { - requestors.emplace(&requestor, std::move(pair)); + if (hasAllDependencies) { + notify(requestor, pair); + } else { + requestors.emplace(&requestor, std::move(pair)); + } } else { checkMissingAndNotify(requestor, std::move(pair)); } -- cgit v1.2.1