Correctly init code cache path for RS

Bug: 27439261

Script Group needs to know the code cache path before it can call bcc to
merge kernels. However, before this change, the code cache path has been
initialized by the ScriptC class.

In the case where a script group (or even the entire app) does not contain any
regular script but only intrinsics, the code cache would remain uninitialized.

Fixed this by initializing the code cache path in the RenderScript class
the first time when the accessor method is called.

Change-Id: I87f9e62e0f3b479f94e43daa3e9695a5b38710db
(cherry picked from commit 689f637700)
This commit is contained in:
Yang Ni
2016-03-10 16:12:31 -08:00
parent 46b5258138
commit 15fcf61dc0
3 changed files with 25 additions and 29 deletions

View File

@@ -396,7 +396,7 @@ public final class ScriptGroup extends BaseObj {
for (int i = 0; i < closureIDs.length; i++) {
closureIDs[i] = closures.get(i).getID(rs);
}
long id = rs.nScriptGroup2Create(name, ScriptC.mCachePath, closureIDs);
long id = rs.nScriptGroup2Create(name, RenderScript.getCachePath(), closureIDs);
setID(id);
}