Loading core/java/android/app/slice/SliceProvider.java +2 −1 Original line number Diff line number Diff line Loading @@ -37,6 +37,7 @@ import android.os.Handler; import android.os.Process; import android.os.StrictMode; import android.os.StrictMode.ThreadPolicy; import android.util.ArraySet; import android.util.Log; import java.util.ArrayList; Loading Loading @@ -513,7 +514,7 @@ public abstract class SliceProvider extends ContentProvider { .detectAll() .penaltyDeath() .build()); return onBindSlice(sliceUri, supportedSpecs); return onBindSlice(sliceUri, new ArraySet<>(supportedSpecs)); } finally { StrictMode.setThreadPolicy(oldPolicy); } Loading services/core/java/com/android/server/slice/SliceManagerService.java +6 −5 Original line number Diff line number Diff line Loading @@ -44,7 +44,6 @@ import android.content.pm.PackageManagerInternal; import android.content.pm.ResolveInfo; import android.net.Uri; import android.os.Binder; import android.os.Environment; import android.os.Handler; import android.os.IBinder; import android.os.Looper; Loading @@ -52,7 +51,6 @@ import android.os.Process; import android.os.RemoteException; import android.os.UserHandle; import android.util.ArrayMap; import android.util.AtomicFile; import android.util.Slog; import android.util.Xml.Encoding; Loading @@ -71,9 +69,7 @@ import org.xmlpull.v1.XmlSerializer; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.File; import java.io.IOException; import java.io.InputStream; import java.util.ArrayList; import java.util.List; import java.util.Objects; Loading Loading @@ -136,11 +132,16 @@ public class SliceManagerService extends ISliceManager.Stub { @Override public Uri[] getPinnedSlices(String pkg) { verifyCaller(pkg); int callingUser = Binder.getCallingUserHandle().getIdentifier(); ArrayList<Uri> ret = new ArrayList<>(); synchronized (mLock) { for (PinnedSliceState state : mPinnedSlicesByUri.values()) { if (Objects.equals(pkg, state.getPkg())) { ret.add(state.getUri()); Uri uri = state.getUri(); int userId = ContentProvider.getUserIdFromUri(uri, callingUser); if (userId == callingUser) { ret.add(ContentProvider.getUriWithoutUserId(uri)); } } } } Loading Loading
core/java/android/app/slice/SliceProvider.java +2 −1 Original line number Diff line number Diff line Loading @@ -37,6 +37,7 @@ import android.os.Handler; import android.os.Process; import android.os.StrictMode; import android.os.StrictMode.ThreadPolicy; import android.util.ArraySet; import android.util.Log; import java.util.ArrayList; Loading Loading @@ -513,7 +514,7 @@ public abstract class SliceProvider extends ContentProvider { .detectAll() .penaltyDeath() .build()); return onBindSlice(sliceUri, supportedSpecs); return onBindSlice(sliceUri, new ArraySet<>(supportedSpecs)); } finally { StrictMode.setThreadPolicy(oldPolicy); } Loading
services/core/java/com/android/server/slice/SliceManagerService.java +6 −5 Original line number Diff line number Diff line Loading @@ -44,7 +44,6 @@ import android.content.pm.PackageManagerInternal; import android.content.pm.ResolveInfo; import android.net.Uri; import android.os.Binder; import android.os.Environment; import android.os.Handler; import android.os.IBinder; import android.os.Looper; Loading @@ -52,7 +51,6 @@ import android.os.Process; import android.os.RemoteException; import android.os.UserHandle; import android.util.ArrayMap; import android.util.AtomicFile; import android.util.Slog; import android.util.Xml.Encoding; Loading @@ -71,9 +69,7 @@ import org.xmlpull.v1.XmlSerializer; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.File; import java.io.IOException; import java.io.InputStream; import java.util.ArrayList; import java.util.List; import java.util.Objects; Loading Loading @@ -136,11 +132,16 @@ public class SliceManagerService extends ISliceManager.Stub { @Override public Uri[] getPinnedSlices(String pkg) { verifyCaller(pkg); int callingUser = Binder.getCallingUserHandle().getIdentifier(); ArrayList<Uri> ret = new ArrayList<>(); synchronized (mLock) { for (PinnedSliceState state : mPinnedSlicesByUri.values()) { if (Objects.equals(pkg, state.getPkg())) { ret.add(state.getUri()); Uri uri = state.getUri(); int userId = ContentProvider.getUserIdFromUri(uri, callingUser); if (userId == callingUser) { ret.add(ContentProvider.getUriWithoutUserId(uri)); } } } } Loading