summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTobrun <tobrun.van.nuland@gmail.com>2018-11-06 11:48:29 +0100
committerTobrun <tobrun.van.nuland@gmail.com>2018-11-06 11:48:29 +0100
commit197cc1ef9f89afa2fca090cb7f16bcc98842f3e8 (patch)
treeccd5b548f6faff99618ed6d9253d6768272322ba
parentafe7e8df63d6f2d0f3418c5a0f44b4a039560566 (diff)
downloadqtlocation-mapboxgl-upstream/tvn-fix-getmapasync.tar.gz
[android] - handle null getMapAsync invocations, deliver onMapReady only onceupstream/tvn-fix-getmapasync
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java11
1 files changed, 8 insertions, 3 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 0a5e2455e1..560d18d17d 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
@@ -1578,13 +1578,18 @@ public class MapView extends FrameLayout implements NativeMapView.ViewCallback {
}
}
+ /**
+ * Notify listeners, clear when done
+ */
private void onMapReady() {
if (onMapReadyCallbackList.size() > 0) {
- // Notify listeners, clear when done
Iterator<OnMapReadyCallback> iterator = onMapReadyCallbackList.iterator();
while (iterator.hasNext()) {
OnMapReadyCallback callback = iterator.next();
- callback.onMapReady(mapboxMap);
+ if (callback != null) {
+ // null checking required for #13279
+ callback.onMapReady(mapboxMap);
+ }
iterator.remove();
}
}
@@ -1619,6 +1624,7 @@ public class MapView extends FrameLayout implements NativeMapView.ViewCallback {
public void onDidFinishLoadingStyle() {
if (mapboxMap != null) {
if (initialLoad) {
+ initialLoad = false;
mapboxMap.onPreMapReady();
onMapReady();
mapboxMap.onPostMapReady();
@@ -1626,7 +1632,6 @@ public class MapView extends FrameLayout implements NativeMapView.ViewCallback {
mapboxMap.onFinishLoadingStyle();
}
}
- initialLoad = false;
}
@Override