Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 85fddcf8 authored by Yang Ni's avatar Yang Ni Committed by android-build-merger
Browse files

Merge "Correctly init code cache path for RS"

am: 60fa615c

* commit '60fa615c':
  Correctly init code cache path for RS
parents 4d60e940 60fa615c
Loading
Loading
Loading
Loading
+22 −5
Original line number Diff line number Diff line
@@ -1386,6 +1386,27 @@ public class RenderScript {
        return mApplicationContext;
    }

    /**
     * Name of the file that holds the object cache.
     */
    private static String mCachePath;

    /**
     * Gets the path to the code cache.
     */
    static synchronized String getCachePath() {
        if (mCachePath == null) {
            final String CACHE_PATH = "com.android.renderscript.cache";
            if (RenderScriptCacheDir.mCacheDir == null) {
                throw new RSRuntimeException("RenderScript code cache directory uninitialized.");
            }
            File f = new File(RenderScriptCacheDir.mCacheDir, CACHE_PATH);
            mCachePath = f.getAbsolutePath();
            f.mkdirs();
        }
        return mCachePath;
    }

    /**
     * Create a RenderScript context.
     *
@@ -1415,11 +1436,7 @@ public class RenderScript {
        }

        // set up cache directory for entire context
        final String CACHE_PATH = "com.android.renderscript.cache";
        File f = new File(RenderScriptCacheDir.mCacheDir, CACHE_PATH);
        String mCachePath = f.getAbsolutePath();
        f.mkdirs();
        rs.nContextSetCacheDir(mCachePath);
        rs.nContextSetCacheDir(RenderScript.getCachePath());

        rs.mMessageThread = new MessageThread(rs);
        rs.mMessageThread.start();
+2 −23
Original line number Diff line number Diff line
@@ -84,13 +84,6 @@ public class ScriptC extends Script {
        setID(id);
    }

    /**
     * Name of the file that holds the object cache.
     */
    private static final String CACHE_PATH = "com.android.renderscript.cache";

    static String mCachePath;

    private static synchronized long internalCreate(RenderScript rs, Resources resources, int resourceID) {
        byte[] pgm;
        int pgmLength;
@@ -122,26 +115,12 @@ public class ScriptC extends Script {

        String resName = resources.getResourceEntryName(resourceID);

        // Create the RS cache path if we haven't done so already.
        if (mCachePath == null) {
            File f = new File(RenderScriptCacheDir.mCacheDir, CACHE_PATH);
            mCachePath = f.getAbsolutePath();
            f.mkdirs();
        }
        //        Log.v(TAG, "Create script for resource = " + resName);
        return rs.nScriptCCreate(resName, mCachePath, pgm, pgmLength);
        return rs.nScriptCCreate(resName, RenderScript.getCachePath(), pgm, pgmLength);
    }

    private static synchronized long internalStringCreate(RenderScript rs, String resName, byte[] bitcode) {
        // Create the RS cache path if we haven't done so already.
        if (mCachePath == null) {
            File f = new File(RenderScriptCacheDir.mCacheDir, CACHE_PATH);
            mCachePath = f.getAbsolutePath();
            f.mkdirs();
        }
        //        Log.v(TAG, "Create script for resource = " + resName);
        return rs.nScriptCCreate(resName, mCachePath, bitcode, bitcode.length);
        return rs.nScriptCCreate(resName, RenderScript.getCachePath(), bitcode, bitcode.length);
    }


}
+1 −1
Original line number Diff line number Diff line
@@ -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);
    }