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

Commit 018cc148 authored by Amith Yamasani's avatar Amith Yamasani Committed by Automerger Merge Worker
Browse files

Merge "Mark all published authorities for a provider as ready" into sc-dev am:...

Merge "Mark all published authorities for a provider as ready" into sc-dev am: d39b5f03 am: fd7c786e am: b47e7815

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/15019800

Change-Id: Iee06f886c5eecba0f963e74b12a5514384435181
parents 19d57ac9 b47e7815
Loading
Loading
Loading
Loading
+9 −6
Original line number Diff line number Diff line
@@ -449,7 +449,7 @@ public final class ActivityThread extends ClientTransactionHandler

        @GuardedBy("mLock")
        ContentProviderHolder mHolder; // Temp holder to be used between notifier and waiter
        Object mLock; // The lock to be used to get notified when the provider is ready
        final Object mLock; // The lock to be used to get notified when the provider is ready

        public ProviderKey(String authority, int userId) {
            this.authority = authority;
@@ -1829,13 +1829,16 @@ public final class ActivityThread extends ClientTransactionHandler

        @Override
        public void notifyContentProviderPublishStatus(@NonNull ContentProviderHolder holder,
                @NonNull String auth, int userId, boolean published) {
                @NonNull String authorities, int userId, boolean published) {
            final String auths[] = authorities.split(";");
            for (String auth: auths) {
                final ProviderKey key = getGetProviderKey(auth, userId);
                synchronized (key.mLock) {
                    key.mHolder = holder;
                    key.mLock.notifyAll();
                }
            }
        }

        @Override
        public void instrumentWithoutRestart(ComponentName instrumentationName,
+1 −1
Original line number Diff line number Diff line
@@ -153,7 +153,7 @@ oneway interface IApplicationThread {
    void performDirectAction(IBinder activityToken, String actionId,
            in Bundle arguments, in RemoteCallback cancellationCallback,
            in RemoteCallback resultCallback);
    void notifyContentProviderPublishStatus(in ContentProviderHolder holder, String auth,
    void notifyContentProviderPublishStatus(in ContentProviderHolder holder, String authorities,
            int userId, boolean published);
    void instrumentWithoutRestart(in ComponentName instrumentationName,
            in Bundle instrumentationArgs,