diff options
author | Brett <3911458+BrettyWhite@users.noreply.github.com> | 2019-03-25 09:58:18 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-03-25 09:58:18 -0400 |
commit | f074f87d456a3ec9e1e4bf969d0866bc0e796529 (patch) | |
tree | 3337bd8304803562d2293b3fc5bec6f829453ace | |
parent | a4fcec34038dfc370aa6ecf089c36a9a719672d5 (diff) | |
parent | 3c57f24987121a179c7c93a008457188ced8b242 (diff) | |
download | sdl_android-f074f87d456a3ec9e1e4bf969d0866bc0e796529.tar.gz |
Merge pull request #1020 from smartdevicelink/feature/permission_manager_npe
Fix potential NPE in PermissionManager
-rw-r--r-- | base/src/main/java/com/smartdevicelink/managers/permission/BasePermissionManager.java | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/base/src/main/java/com/smartdevicelink/managers/permission/BasePermissionManager.java b/base/src/main/java/com/smartdevicelink/managers/permission/BasePermissionManager.java index 999e3a167..1fbedd85f 100644 --- a/base/src/main/java/com/smartdevicelink/managers/permission/BasePermissionManager.java +++ b/base/src/main/java/com/smartdevicelink/managers/permission/BasePermissionManager.java @@ -112,8 +112,13 @@ abstract class BasePermissionManager extends BaseSubManager{ List<PermissionItem> permissionItems = ((OnPermissionsChange)notification).getPermissionItem(); Map<FunctionID, PermissionItem> previousPermissionItems = currentPermissionItems; currentPermissionItems = new HashMap<>(); - for (PermissionItem permissionItem : permissionItems) { - currentPermissionItems.put(FunctionID.getEnumForString(permissionItem.getRpcName()), permissionItem); + if (permissionItems != null && !permissionItems.isEmpty()) { + for (PermissionItem permissionItem : permissionItems) { + FunctionID functionID = FunctionID.getEnumForString(permissionItem.getRpcName()); + if (functionID != null) { + currentPermissionItems.put(functionID, permissionItem); + } + } } notifyListeners(previousPermissionItems, currentHMILevel, currentPermissionItems, currentHMILevel); previousPermissionItems.clear(); |