diff options
author | Jason Sams <rjsams@android.com> | 2011-05-17 15:01:29 -0700 |
---|---|---|
committer | Jason Sams <rjsams@android.com> | 2011-05-17 15:01:29 -0700 |
commit | edbfabdb98a2974f973d6c042e6efd547dc02fc5 (patch) | |
tree | 4c33358e10edd0f6f6144d8e51fd1d018dbf2461 /graphics/java/android/renderscript/RenderScript.java | |
parent | dffa4761c8e238a925dcd7a4d23f044e2817d5e5 (diff) |
Core to client fifo on sockets.
Change-Id: I3b84a7d4c3c5fa0d764ad4db22dfd142d5cfa95b
Diffstat (limited to 'graphics/java/android/renderscript/RenderScript.java')
-rw-r--r-- | graphics/java/android/renderscript/RenderScript.java | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/graphics/java/android/renderscript/RenderScript.java b/graphics/java/android/renderscript/RenderScript.java index 41a29e6cd9e1..d51c2023a2be 100644 --- a/graphics/java/android/renderscript/RenderScript.java +++ b/graphics/java/android/renderscript/RenderScript.java @@ -68,9 +68,9 @@ public class RenderScript { native int nDeviceCreate(); native void nDeviceDestroy(int dev); native void nDeviceSetConfig(int dev, int param, int value); - native void nContextGetUserMessage(int con, int[] data); + native int nContextGetUserMessage(int con, int[] data); native String nContextGetErrorMessage(int con); - native int nContextPeekMessage(int con, int[] subID, boolean wait); + native int nContextPeekMessage(int con, int[] subID); native void nContextInitToClient(int con); native void nContextDeinitToClient(int con); @@ -736,7 +736,7 @@ public class RenderScript { mRS.nContextInitToClient(mRS.mContext); while(mRun) { rbuf[0] = 0; - int msg = mRS.nContextPeekMessage(mRS.mContext, mAuxData, true); + int msg = mRS.nContextPeekMessage(mRS.mContext, mAuxData); int size = mAuxData[1]; int subID = mAuxData[0]; @@ -744,7 +744,10 @@ public class RenderScript { if ((size>>2) >= rbuf.length) { rbuf = new int[(size + 3) >> 2]; } - mRS.nContextGetUserMessage(mRS.mContext, rbuf); + if (mRS.nContextGetUserMessage(mRS.mContext, rbuf) != + RS_MESSAGE_TO_CLIENT_USER) { + throw new RSDriverException("Error processing message from Renderscript."); + } if(mRS.mMessageCallback != null) { mRS.mMessageCallback.mData = rbuf; |