diff --git a/services/core/java/com/android/server/connectivity/Vpn.java b/services/core/java/com/android/server/connectivity/Vpn.java index f231f922a0e60..3b0b79a771efe 100644 --- a/services/core/java/com/android/server/connectivity/Vpn.java +++ b/services/core/java/com/android/server/connectivity/Vpn.java @@ -718,7 +718,8 @@ public class Vpn { public void onUserAdded(int userHandle) { // If the user is restricted tie them to the parent user's VPN UserInfo user = UserManager.get(mContext).getUserInfo(userHandle); - if (user.isRestricted() && user.restrictedProfileParentId == mUserHandle) { + if (user.isRestricted() && user.restrictedProfileParentId == mUserHandle + && mVpnUsers != null) { synchronized(Vpn.this) { try { addVpnUserLocked(userHandle); @@ -736,7 +737,8 @@ public class Vpn { public void onUserRemoved(int userHandle) { // clean up if restricted UserInfo user = UserManager.get(mContext).getUserInfo(userHandle); - if (user.isRestricted() && user.restrictedProfileParentId == mUserHandle) { + if (user.isRestricted() && user.restrictedProfileParentId == mUserHandle + && mVpnUsers != null) { synchronized(Vpn.this) { try { removeVpnUserLocked(userHandle);