summaryrefslogtreecommitdiff
path: root/rs/java/android/renderscript/Script.java
diff options
context:
space:
mode:
authorTim Murray <timmurray@google.com>2014-02-03 22:37:11 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2014-02-03 22:37:11 +0000
commit3fb6feacc62e1021c705b53d46e915ecf50582d2 (patch)
treed988b4ec3e4987edec9defbe9466c0027639501c /rs/java/android/renderscript/Script.java
parent0cc37f4cdeaed95e4f61f1a6e7b78f07e7025e97 (diff)
parentcf9c894a9b7523cd5ec707218b89517f67caa047 (diff)
Merge "Check that bound allocations are 1D"
Diffstat (limited to 'rs/java/android/renderscript/Script.java')
-rw-r--r--rs/java/android/renderscript/Script.java7
1 files changed, 7 insertions, 0 deletions
diff --git a/rs/java/android/renderscript/Script.java b/rs/java/android/renderscript/Script.java
index 5ab18f744c2b..a1f228718436 100644
--- a/rs/java/android/renderscript/Script.java
+++ b/rs/java/android/renderscript/Script.java
@@ -188,6 +188,13 @@ public class Script extends BaseObj {
public void bindAllocation(Allocation va, int slot) {
mRS.validate();
if (va != null) {
+ if (mRS.getApplicationContext().getApplicationInfo().targetSdkVersion >= 20) {
+ final Type t = va.mType;
+ if (t.hasMipmaps() || t.hasFaces() || (t.getY() != 0) || (t.getZ() != 0)) {
+ throw new RSIllegalArgumentException(
+ "API 20+ only allows simple 1D allocations to be used with bind.");
+ }
+ }
mRS.nScriptBindAllocation(getID(mRS), va.getID(mRS), slot);
} else {
mRS.nScriptBindAllocation(getID(mRS), 0, slot);