summaryrefslogtreecommitdiff
path: root/rs/java/android/renderscript/Allocation.java
diff options
context:
space:
mode:
authorYang Ni <yangni@google.com>2016-04-01 00:33:57 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2016-04-01 00:33:58 +0000
commit0c6ed67c3ab80f406d31a2e4d666a680e62cb83c (patch)
treef64f3fe55b23960c162a4793304ce60b434611bc /rs/java/android/renderscript/Allocation.java
parentb8572b3d50475918d3e2b25961b7c6189d6af39e (diff)
parent6484b6be5ca5233614d0a8991a5d909543824fc7 (diff)
Merge "Added CloseGuard for BaseObj" into nyc-dev
Diffstat (limited to 'rs/java/android/renderscript/Allocation.java')
-rw-r--r--rs/java/android/renderscript/Allocation.java2
1 files changed, 2 insertions, 0 deletions
diff --git a/rs/java/android/renderscript/Allocation.java b/rs/java/android/renderscript/Allocation.java
index 81f63aeab0a5..9ec6e8daf429 100644
--- a/rs/java/android/renderscript/Allocation.java
+++ b/rs/java/android/renderscript/Allocation.java
@@ -380,6 +380,7 @@ public class Allocation extends BaseObj {
Log.e(RenderScript.LOG_TAG, "Couldn't invoke registerNativeAllocation:" + e);
throw new RSRuntimeException("Couldn't invoke registerNativeAllocation:" + e);
}
+ guard.open("destroy");
}
Allocation(long id, RenderScript rs, Type t, int usage, MipmapControl mips) {
@@ -1915,6 +1916,7 @@ public class Allocation extends BaseObj {
if (type.getID(rs) == 0) {
throw new RSInvalidStateException("Bad Type");
}
+ // TODO: What if there is an exception after this? The native allocation would leak.
long id = rs.nAllocationCreateTyped(type.getID(rs), mips.mID, usage, 0);
if (id == 0) {
throw new RSRuntimeException("Allocation creation failed.");