Loading core/java/android/app/ActivityThread.java +24 −4 Original line number Diff line number Diff line Loading @@ -369,11 +369,12 @@ public final class ActivityThread extends ClientTransactionHandler @UnsupportedAppUsage(trackingBug = 176961850, maxTargetSdk = Build.VERSION_CODES.R, publicAlternatives = "Use {@code Context#getResources()#getConfiguration()} instead.") Configuration mConfiguration; @GuardedBy("this") private boolean mUpdateHttpProxyOnBind = false; @UnsupportedAppUsage Application mInitialApplication; @UnsupportedAppUsage final ArrayList<Application> mAllApplications = new ArrayList<Application>(); final ArrayList<Application> mAllApplications = new ArrayList<>(); /** * Bookkeeping of instantiated backup agents indexed first by user id, then by package name. * Indexing by user id supports parallel backups across users on system packages as they run in Loading Loading @@ -1187,8 +1188,18 @@ public final class ActivityThread extends ClientTransactionHandler } public void updateHttpProxy() { ActivityThread.updateHttpProxy( getApplication() != null ? getApplication() : getSystemContext()); final Application app; synchronized (ActivityThread.this) { app = getApplication(); if (null == app) { // The app is not bound yet. Make a note to update the HTTP proxy when the // app is bound. mUpdateHttpProxyOnBind = true; return; } } // App is present, update the proxy inline. ActivityThread.updateHttpProxy(app); } public void processInBackground() { Loading Loading @@ -6685,6 +6696,15 @@ public final class ActivityThread extends ClientTransactionHandler sendMessage(H.SET_CONTENT_CAPTURE_OPTIONS_CALLBACK, data.appInfo.packageName); mInitialApplication = app; final boolean updateHttpProxy; synchronized (this) { updateHttpProxy = mUpdateHttpProxyOnBind; // This synchronized block ensures that any subsequent call to updateHttpProxy() // will see a non-null mInitialApplication. } if (updateHttpProxy) { ActivityThread.updateHttpProxy(app); } // don't bring up providers in restricted mode; they may depend on the // app's custom Application class Loading Loading
core/java/android/app/ActivityThread.java +24 −4 Original line number Diff line number Diff line Loading @@ -369,11 +369,12 @@ public final class ActivityThread extends ClientTransactionHandler @UnsupportedAppUsage(trackingBug = 176961850, maxTargetSdk = Build.VERSION_CODES.R, publicAlternatives = "Use {@code Context#getResources()#getConfiguration()} instead.") Configuration mConfiguration; @GuardedBy("this") private boolean mUpdateHttpProxyOnBind = false; @UnsupportedAppUsage Application mInitialApplication; @UnsupportedAppUsage final ArrayList<Application> mAllApplications = new ArrayList<Application>(); final ArrayList<Application> mAllApplications = new ArrayList<>(); /** * Bookkeeping of instantiated backup agents indexed first by user id, then by package name. * Indexing by user id supports parallel backups across users on system packages as they run in Loading Loading @@ -1187,8 +1188,18 @@ public final class ActivityThread extends ClientTransactionHandler } public void updateHttpProxy() { ActivityThread.updateHttpProxy( getApplication() != null ? getApplication() : getSystemContext()); final Application app; synchronized (ActivityThread.this) { app = getApplication(); if (null == app) { // The app is not bound yet. Make a note to update the HTTP proxy when the // app is bound. mUpdateHttpProxyOnBind = true; return; } } // App is present, update the proxy inline. ActivityThread.updateHttpProxy(app); } public void processInBackground() { Loading Loading @@ -6685,6 +6696,15 @@ public final class ActivityThread extends ClientTransactionHandler sendMessage(H.SET_CONTENT_CAPTURE_OPTIONS_CALLBACK, data.appInfo.packageName); mInitialApplication = app; final boolean updateHttpProxy; synchronized (this) { updateHttpProxy = mUpdateHttpProxyOnBind; // This synchronized block ensures that any subsequent call to updateHttpProxy() // will see a non-null mInitialApplication. } if (updateHttpProxy) { ActivityThread.updateHttpProxy(app); } // don't bring up providers in restricted mode; they may depend on the // app's custom Application class Loading