diff options
author | tobrun <tobrun.van.nuland@gmail.com> | 2019-01-16 16:22:01 +0100 |
---|---|---|
committer | Tobrun <tobrun@mapbox.com> | 2019-01-17 12:54:20 +0100 |
commit | 6e856ebb675340d2935ca6bf3148fa94e4fdd19f (patch) | |
tree | cb670bd6afc31aa2996b7e2e8e2471c7352046c3 /platform/android | |
parent | 69eb856f9afdf1ef7c0b9a51b4d1c16b413e8876 (diff) | |
download | qtlocation-mapboxgl-6e856ebb675340d2935ca6bf3148fa94e4fdd19f.tar.gz |
[android] - avoid leaking compassView context through animator
Diffstat (limited to 'platform/android')
2 files changed, 6 insertions, 1 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 94f38bb2c0..9d8dbce289 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 @@ -411,6 +411,11 @@ public class MapView extends FrameLayout implements NativeMapView.ViewCallback { mapCallback.onDestroy(); initialRenderCallback.onDestroy(); + if (compassView != null) { + // avoid leaking context through animator #13742 + compassView.resetAnimation(); + } + if (mapboxMap != null) { mapboxMap.onDestroy(); } diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/widgets/CompassView.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/widgets/CompassView.java index 9c800c078f..6262418a29 100644 --- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/widgets/CompassView.java +++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/widgets/CompassView.java @@ -68,7 +68,7 @@ public final class CompassView extends AppCompatImageView implements Runnable { this.isAnimating = isAnimating; } - private void resetAnimation() { + public void resetAnimation() { if (fadeAnimator != null) { fadeAnimator.cancel(); } |