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

Commit ecf80f0e authored by Rick Yiu's avatar Rick Yiu
Browse files

Add null check for vrManager

If VrManagerService is not started, vrManager will be null. Need
add check for it.

Test: system does not break if VrManagerService is not started
Bug: 112064298
Change-Id: I3c1d78247043feca3d1a195f28567d622483a318
parent 7a5a757c
Loading
Loading
Loading
Loading
+5 −4
Original line number Diff line number Diff line
@@ -26,7 +26,6 @@ import static android.os.HardwarePropertiesManager.TEMPERATURE_THROTTLING;
import static android.os.HardwarePropertiesManager.TEMPERATURE_THROTTLING_BELOW_VR_MIN;

import android.Manifest;
import android.app.ActivityManager;
import android.app.AppOpsManager;
import android.app.admin.DevicePolicyManager;
import android.content.Context;
@@ -34,8 +33,8 @@ import android.content.pm.PackageManager;
import android.os.Binder;
import android.os.CpuUsageInfo;
import android.os.IHardwarePropertiesManager;
import android.os.Process;
import android.os.UserHandle;

import com.android.internal.util.DumpUtils;
import com.android.server.vr.VrManagerInternal;

@@ -166,12 +165,14 @@ public class HardwarePropertiesManagerService extends IHardwarePropertiesManager
        final VrManagerInternal vrService = LocalServices.getService(VrManagerInternal.class);
        final DevicePolicyManager dpm = mContext.getSystemService(DevicePolicyManager.class);
        if (!dpm.isDeviceOwnerApp(callingPackage)
                && !vrService.isCurrentVrListener(callingPackage, userId)
                && mContext.checkCallingOrSelfPermission(Manifest.permission.DEVICE_POWER)
                        != PackageManager.PERMISSION_GRANTED) {
            throw new SecurityException("The caller is not a device owner, bound VrListenerService"
            throw new SecurityException("The caller is not a device owner"
                + ", or holding the DEVICE_POWER permission.");
        }
        if (vrService != null && !vrService.isCurrentVrListener(callingPackage, userId)) {
            throw new SecurityException("The caller is not bound VrListenerService.");
        }
    }
}