summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTobrun <tobrun.van.nuland@gmail.com>2018-04-24 14:01:48 +0200
committerTobrun <tobrun@mapbox.com>2018-05-14 11:38:21 +0200
commit5653b340bc2de15b1d17661784bbb451b47bcece (patch)
treead4c21305bc4552f45d31074e86a4b1807e049d6
parent5380d80c88087f20238592aaa19e8b48fc383a5e (diff)
downloadqtlocation-mapboxgl-5653b340bc2de15b1d17661784bbb451b47bcece.tar.gz
[android] - clear map change listeners when map is destroyed
-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 7cd1177523..ae18f741d4 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() {