OSDN Git Service

Added CloseGuard for BaseObj
authorYang Ni <yangni@google.com>
Thu, 24 Mar 2016 16:40:32 +0000 (09:40 -0700)
committerYang Ni <yangni@google.com>
Thu, 31 Mar 2016 21:38:38 +0000 (14:38 -0700)
commiteb4dd08ec132f83745b8b28fa7da58eb4478b5b9
tree0ebfc9e81548d6a1e7ec1907020946fa5af8bc83
parent72dd79fa41fad71a14bb82eb830c927299d92d02
Added CloseGuard for BaseObj

Bug: 27719830

To turn on warnings, apps have to add to their Activity.onCreate() method
the following code.

        StrictMode.setVmPolicy(new StrictMode.VmPolicy.Builder()
                               .detectLeakedClosableObjects()
                               .penaltyLog()
                               .build());

For Slang generated ScriptC derived classes, we assume their
constructors won't throw exceptions after calling the ScriptC
constructor. In addition, ScriptIntrinsic derived classes do not seem
to throw exceptions in their constructors either. Therefore, we can
leave the guard.open() call in the Script constructor. This may be
only an approximation, but allows us to add CloseGuard for script
objects without making changes to slang.

Change-Id: I77ed45239a60b85af5c811dee6c124fb53da9060
rs/java/android/renderscript/Allocation.java
rs/java/android/renderscript/BaseObj.java
rs/java/android/renderscript/Element.java
rs/java/android/renderscript/FileA3D.java
rs/java/android/renderscript/Font.java
rs/java/android/renderscript/Mesh.java
rs/java/android/renderscript/Program.java
rs/java/android/renderscript/Sampler.java
rs/java/android/renderscript/Script.java
rs/java/android/renderscript/ScriptGroup.java
rs/java/android/renderscript/Type.java