From cf375524aa469e537e466cdabfd8a2cdea0e8422 Mon Sep 17 00:00:00 2001 From: Chris Broadfoot Date: Wed, 22 Oct 2014 11:44:08 +1100 Subject: [PATCH] Add lock check missing from waitUntilFree method. --- .../clustering/view/DefaultClusterRenderer.java | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/library/src/com/google/maps/android/clustering/view/DefaultClusterRenderer.java b/library/src/com/google/maps/android/clustering/view/DefaultClusterRenderer.java index bb8d33287..55a0429eb 100644 --- a/library/src/com/google/maps/android/clustering/view/DefaultClusterRenderer.java +++ b/library/src/com/google/maps/android/clustering/view/DefaultClusterRenderer.java @@ -625,10 +625,15 @@ private void removeMarker(Marker m) { * @return true if there is still work to be processed. */ public boolean isBusy() { - return !(mCreateMarkerTasks.isEmpty() && mOnScreenCreateMarkerTasks.isEmpty() && - mOnScreenRemoveMarkerTasks.isEmpty() && mRemoveMarkerTasks.isEmpty() && - mAnimationTasks.isEmpty() - ); + try { + lock.lock(); + return !(mCreateMarkerTasks.isEmpty() && mOnScreenCreateMarkerTasks.isEmpty() && + mOnScreenRemoveMarkerTasks.isEmpty() && mRemoveMarkerTasks.isEmpty() && + mAnimationTasks.isEmpty() + ); + } finally { + lock.unlock(); + } } /**