summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTobrun <tobrun.van.nuland@gmail.com>2018-04-24 14:01:48 +0200
committerTobrun <tobrun.van.nuland@gmail.com>2018-04-24 14:01:48 +0200
commitffea069251781ef570156bf24bac1723b1f0621a (patch)
treec6579da8becbe180d244d629f8af7794c00998ab
parent66162c1b951ee82e1f9896e4c8e3230e8d9a79df (diff)
downloadqtlocation-mapboxgl-upstream/tvn-flutter-integration.tar.gz
[android] - clear map change listeners when map is destroyedupstream/tvn-flutter-integration
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java1
-rwxr-xr-xplatform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/NativeMapView.java5
2 files changed, 4 insertions, 2 deletions
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java
index 9227aabdf3..4ecd7c9246 100644
--- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java
+++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java
@@ -410,6 +410,7 @@ public class MapView extends FrameLayout implements NativeMapView.ViewCallback {
@UiThread
public void onDestroy() {
destroyed = true;
+ onMapChangedListeners.clear();
mapCallback.clearOnMapReadyCallbacks();
if (nativeMapView != null && hasSurface) {
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/NativeMapView.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/NativeMapView.java
index 6ba87b4238..7cae0d0791 100755
--- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/NativeMapView.java
+++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/NativeMapView.java
@@ -100,9 +100,10 @@ final class NativeMapView {
}
public void destroy() {
- nativeDestroy();
- viewCallback = null;
destroyed = true;
+ onMapChangedListeners.clear();
+ viewCallback = null;
+ nativeDestroy();
}
public void update() {