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

Commit ef5a4ca4 authored by Kurt Nelson's avatar Kurt Nelson Committed by android-build-merger
Browse files

Merge "Version guard Application.onCreate strict mode fix" into oc-mr1-dev

am: e002f440

Change-Id: If8cb15b7bf2d5994f7895c9743d8cd0e81f78f6f
parents 0f03652b e002f440
Loading
Loading
Loading
Loading
+15 −10
Original line number Diff line number Diff line
@@ -5718,6 +5718,7 @@ public final class ActivityThread {
        // probably end up doing the same disk access.
        Application app;
        final StrictMode.ThreadPolicy savedPolicy = StrictMode.allowThreadDiskWrites();
        final StrictMode.ThreadPolicy writesAllowedPolicy = StrictMode.getThreadPolicy();
        try {
            // If the app is being launched for full backup or restore, bring it up in
            // a restricted environment with the base application class.
@@ -5745,10 +5746,6 @@ public final class ActivityThread {
                    "Exception thrown in onCreate() of "
                    + data.instrumentationName + ": " + e.toString(), e);
            }
        } finally {
            StrictMode.setThreadPolicy(savedPolicy);
        }

            try {
                mInstrumentation.callApplicationOnCreate(app);
            } catch (Exception e) {
@@ -5758,6 +5755,14 @@ public final class ActivityThread {
                      + ": " + e.toString(), e);
                }
            }
        } finally {
            // If the app targets < O-MR1, or doesn't change the thread policy
            // during startup, clobber the policy to maintain behavior of b/36951662
            if (data.appInfo.targetSdkVersion <= Build.VERSION_CODES.O
                    || StrictMode.getThreadPolicy().equals(writesAllowedPolicy)) {
                StrictMode.setThreadPolicy(savedPolicy);
            }
        }

        // Preload fonts resources
        FontsContract.setApplicationContextForResources(appContext);