when removing an image use the correct list ptr for presence verification

This fixes an issues where calling `removeImage` would crash if the image was not present and the original list was not empty.
This commit is contained in:
Łukasz Paczos
2020-04-10 15:39:31 +02:00
parent be9ca95e9a
commit f79334c124
2 changed files with 3 additions and 1 deletions

View File

@@ -34,6 +34,8 @@
The `symbolIntersectsTileEdges()` util in `mbgl::TilePlacement` now considers icon shift for the variable symbols with enabled icon-text-fit setting, thus providing more accurate results.
- [core] Correctly log a warning instead of crashing when a non-existent image is attempted to be removed. ([#16391](https://github.com/mapbox/mapbox-gl-native/pull/16391))
## maps-v1.5.1
### 🐞 Bug fixes

View File

@@ -293,7 +293,7 @@ void Style::Impl::removeImage(const std::string& id) {
auto newImages = makeMutable<ImageImpls>(*images);
auto found =
std::find_if(newImages->begin(), newImages->end(), [&id](const auto& image) { return image->id == id; });
if (found == images->end()) {
if (found == newImages->end()) {
Log::Warning(Event::General, "Image '%s' is not present in style, cannot remove", id.c_str());
return;
}