diff --git a/modules/mogo-module-service/src/main/java/com/mogo/module/service/routeoverlay/RouteOverlayDrawer.java b/modules/mogo-module-service/src/main/java/com/mogo/module/service/routeoverlay/RouteOverlayDrawer.java index e1d8c28da5..3d30ab7cba 100644 --- a/modules/mogo-module-service/src/main/java/com/mogo/module/service/routeoverlay/RouteOverlayDrawer.java +++ b/modules/mogo-module-service/src/main/java/com/mogo/module/service/routeoverlay/RouteOverlayDrawer.java @@ -166,10 +166,20 @@ public class RouteOverlayDrawer { setVisible(false); return; } - for (int i = 0; i < routes.size(); i++) { - MessagePad.TrajectoryPoint route = routes.get(i); + int total = routes.size(); + for (int i = 0; i < total ; i++) { + MessagePad.TrajectoryPoint route = null; + try { + route = routes.get(i); + if (route == null) { + continue; + } + } catch (Throwable t) { + Log.d(M_OLD_ROUTE + TAG, "render-error:" + t.getMessage()); + } if (route == null) { - continue; + //数组越界了,结束循环 + break; } MogoLatLng acquire = pools.acquire(); double latitude = route.getLatitude();