Loading services/core/java/com/android/server/pm/permission/PermissionManagerService.java +39 −29 Original line number Diff line number Diff line Loading @@ -1697,10 +1697,11 @@ public class PermissionManagerService extends IPermissionManager.Stub { if (mPackageManagerInt.getInstantAppPackageName(callingUid) != null) { return null; } DefaultBrowserProvider provider; synchronized (mLock) { return mDefaultBrowserProvider == null ? null : mDefaultBrowserProvider.getDefaultBrowser(userId); provider = mDefaultBrowserProvider; } return provider != null ? provider.getDefaultBrowser(userId) : null; } @Override Loading @@ -1716,23 +1717,27 @@ public class PermissionManagerService extends IPermissionManager.Stub { private boolean setDefaultBrowserInternal(String packageName, boolean async, boolean doGrant, int userId) { synchronized (mLock) { if (userId == UserHandle.USER_ALL) { return false; } if (mDefaultBrowserProvider == null) { DefaultBrowserProvider provider; synchronized (mLock) { provider = mDefaultBrowserProvider; } if (provider == null) { return false; } if (async) { mDefaultBrowserProvider.setDefaultBrowserAsync(packageName, userId); provider.setDefaultBrowserAsync(packageName, userId); } else { if (!mDefaultBrowserProvider.setDefaultBrowser(packageName, userId)) { if (!provider.setDefaultBrowser(packageName, userId)) { return false; } } if (doGrant && packageName != null) { mDefaultPermissionGrantPolicy .grantDefaultPermissionsToDefaultBrowser(packageName, userId); synchronized (mLock) { mDefaultPermissionGrantPolicy.grantDefaultPermissionsToDefaultBrowser(packageName, userId); } } return true; Loading Loading @@ -4334,15 +4339,17 @@ public class PermissionManagerService extends IPermissionManager.Stub { @Override public void setDefaultHome(String packageName, int userId, Consumer<Boolean> callback) { synchronized (mLock) { if (userId == UserHandle.USER_ALL) { return; } if (mDefaultHomeProvider == null) { return; DefaultHomeProvider provider; synchronized (mLock) { provider = mDefaultHomeProvider; } mDefaultHomeProvider.setDefaultHomeAsync(packageName, userId, callback); if (provider == null) { return; } provider.setDefaultHomeAsync(packageName, userId, callback); } @Override Loading Loading @@ -4403,26 +4410,29 @@ public class PermissionManagerService extends IPermissionManager.Stub { @Override public String getDefaultBrowser(int userId) { DefaultBrowserProvider provider; synchronized (mLock) { return mDefaultBrowserProvider == null ? null : mDefaultBrowserProvider.getDefaultBrowser(userId); provider = mDefaultBrowserProvider; } return provider != null ? provider.getDefaultBrowser(userId) : null; } @Override public String getDefaultDialer(int userId) { DefaultDialerProvider provider; synchronized (mLock) { return mDefaultDialerProvider == null ? null : mDefaultDialerProvider.getDefaultDialer(userId); provider = mDefaultDialerProvider; } return provider != null ? provider.getDefaultDialer(userId) : null; } @Override public String getDefaultHome(int userId) { DefaultHomeProvider provider; synchronized (mLock) { return mDefaultHomeProvider == null ? null : mDefaultHomeProvider.getDefaultHome(userId); provider = mDefaultHomeProvider; } return provider != null ? provider.getDefaultHome(userId) : null; } @Override Loading Loading
services/core/java/com/android/server/pm/permission/PermissionManagerService.java +39 −29 Original line number Diff line number Diff line Loading @@ -1697,10 +1697,11 @@ public class PermissionManagerService extends IPermissionManager.Stub { if (mPackageManagerInt.getInstantAppPackageName(callingUid) != null) { return null; } DefaultBrowserProvider provider; synchronized (mLock) { return mDefaultBrowserProvider == null ? null : mDefaultBrowserProvider.getDefaultBrowser(userId); provider = mDefaultBrowserProvider; } return provider != null ? provider.getDefaultBrowser(userId) : null; } @Override Loading @@ -1716,23 +1717,27 @@ public class PermissionManagerService extends IPermissionManager.Stub { private boolean setDefaultBrowserInternal(String packageName, boolean async, boolean doGrant, int userId) { synchronized (mLock) { if (userId == UserHandle.USER_ALL) { return false; } if (mDefaultBrowserProvider == null) { DefaultBrowserProvider provider; synchronized (mLock) { provider = mDefaultBrowserProvider; } if (provider == null) { return false; } if (async) { mDefaultBrowserProvider.setDefaultBrowserAsync(packageName, userId); provider.setDefaultBrowserAsync(packageName, userId); } else { if (!mDefaultBrowserProvider.setDefaultBrowser(packageName, userId)) { if (!provider.setDefaultBrowser(packageName, userId)) { return false; } } if (doGrant && packageName != null) { mDefaultPermissionGrantPolicy .grantDefaultPermissionsToDefaultBrowser(packageName, userId); synchronized (mLock) { mDefaultPermissionGrantPolicy.grantDefaultPermissionsToDefaultBrowser(packageName, userId); } } return true; Loading Loading @@ -4334,15 +4339,17 @@ public class PermissionManagerService extends IPermissionManager.Stub { @Override public void setDefaultHome(String packageName, int userId, Consumer<Boolean> callback) { synchronized (mLock) { if (userId == UserHandle.USER_ALL) { return; } if (mDefaultHomeProvider == null) { return; DefaultHomeProvider provider; synchronized (mLock) { provider = mDefaultHomeProvider; } mDefaultHomeProvider.setDefaultHomeAsync(packageName, userId, callback); if (provider == null) { return; } provider.setDefaultHomeAsync(packageName, userId, callback); } @Override Loading Loading @@ -4403,26 +4410,29 @@ public class PermissionManagerService extends IPermissionManager.Stub { @Override public String getDefaultBrowser(int userId) { DefaultBrowserProvider provider; synchronized (mLock) { return mDefaultBrowserProvider == null ? null : mDefaultBrowserProvider.getDefaultBrowser(userId); provider = mDefaultBrowserProvider; } return provider != null ? provider.getDefaultBrowser(userId) : null; } @Override public String getDefaultDialer(int userId) { DefaultDialerProvider provider; synchronized (mLock) { return mDefaultDialerProvider == null ? null : mDefaultDialerProvider.getDefaultDialer(userId); provider = mDefaultDialerProvider; } return provider != null ? provider.getDefaultDialer(userId) : null; } @Override public String getDefaultHome(int userId) { DefaultHomeProvider provider; synchronized (mLock) { return mDefaultHomeProvider == null ? null : mDefaultHomeProvider.getDefaultHome(userId); provider = mDefaultHomeProvider; } return provider != null ? provider.getDefaultHome(userId) : null; } @Override Loading