diff options
Diffstat (limited to 'src/mbgl/annotation/annotation_tile.cpp')
-rw-r--r-- | src/mbgl/annotation/annotation_tile.cpp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/mbgl/annotation/annotation_tile.cpp b/src/mbgl/annotation/annotation_tile.cpp index a410adc95e..69c9f07655 100644 --- a/src/mbgl/annotation/annotation_tile.cpp +++ b/src/mbgl/annotation/annotation_tile.cpp @@ -11,11 +11,17 @@ AnnotationTile::AnnotationTile(const OverscaledTileID& overscaledTileID, const TileParameters& parameters) : GeometryTile(overscaledTileID, AnnotationManager::SourceID, parameters), annotationManager(parameters.annotationManager) { - annotationManager.addTile(*this); + auto guard = annotationManager.lock(); + if (annotationManager) { + annotationManager->addTile(*this); + } } AnnotationTile::~AnnotationTile() { - annotationManager.removeTile(*this); + auto guard = annotationManager.lock(); + if (annotationManager) { + annotationManager->removeTile(*this); + } } class AnnotationTileFeatureData { |