diff options
author | Pirama Arumuga Nainar <pirama@google.com> | 2015-10-02 21:58:50 +0000 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2015-10-02 21:58:50 +0000 |
commit | ca3e5aeaa65ae1d77ce92f082ab789933eb18237 (patch) | |
tree | 38cac5c33fe5efb4e2a852bc4af0e60544f4c8f1 /rs/java/android/renderscript/RenderScript.java | |
parent | 86e67d708d738807c843850a3b6c9170e514ff8f (diff) | |
parent | 2f25ce7753f7f1f6a0cc549a0df0082286bd5f85 (diff) |
Merge "Retry if interrupted before mMessageThread has joined"
Diffstat (limited to 'rs/java/android/renderscript/RenderScript.java')
-rw-r--r-- | rs/java/android/renderscript/RenderScript.java | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/rs/java/android/renderscript/RenderScript.java b/rs/java/android/renderscript/RenderScript.java index 326f2732aca7..c35945160365 100644 --- a/rs/java/android/renderscript/RenderScript.java +++ b/rs/java/android/renderscript/RenderScript.java @@ -1574,9 +1574,16 @@ public class RenderScript { nContextDeinitToClient(mContext); mMessageThread.mRun = false; - try { - mMessageThread.join(); - } catch(InterruptedException e) { + + // Wait for mMessageThread to join. Try in a loop, in case this thread gets interrupted + // during the wait. + boolean hasJoined = false; + while (!hasJoined) { + try { + mMessageThread.join(); + hasJoined = true; + } catch(InterruptedException e) { + } } nContextDestroy(); |