diff options
author | Pirama Arumuga Nainar <pirama@google.com> | 2015-10-02 22:08:11 +0000 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2015-10-02 22:08:11 +0000 |
commit | 5fbb245230317b5ca312556b73380195871827eb (patch) | |
tree | 629e99380e5c99e8eceedc97895ae475c6b2901f /rs/java/android/renderscript/RenderScript.java | |
parent | 6706b71d7cfb9a916fd482189c04a0d59c19c103 (diff) | |
parent | ca3e5aeaa65ae1d77ce92f082ab789933eb18237 (diff) |
am ca3e5aea: Merge "Retry if interrupted before mMessageThread has joined"
* commit 'ca3e5aeaa65ae1d77ce92f082ab789933eb18237':
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 a2967e8a2c47..5a27301badcb 100644 --- a/rs/java/android/renderscript/RenderScript.java +++ b/rs/java/android/renderscript/RenderScript.java @@ -1583,9 +1583,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(); |