summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--services/core/java/com/android/server/display/DisplayManagerService.java10
1 files changed, 8 insertions, 2 deletions
diff --git a/services/core/java/com/android/server/display/DisplayManagerService.java b/services/core/java/com/android/server/display/DisplayManagerService.java
index 182a038d10f7..0decd3393672 100644
--- a/services/core/java/com/android/server/display/DisplayManagerService.java
+++ b/services/core/java/com/android/server/display/DisplayManagerService.java
@@ -1528,8 +1528,14 @@ public final class DisplayManagerService extends SystemService {
if (requestedModeId == 0 && requestedRefreshRate != 0) {
// Scan supported modes returned by display.getInfo() to find a mode with the same
// size as the default display mode but with the specified refresh rate instead.
- requestedModeId = display.getDisplayInfoLocked().findDefaultModeByRefreshRate(
- requestedRefreshRate).getModeId();
+ Display.Mode mode = display.getDisplayInfoLocked().findDefaultModeByRefreshRate(
+ requestedRefreshRate);
+ if (mode != null) {
+ requestedModeId = mode.getModeId();
+ } else {
+ Slog.e(TAG, "Couldn't find a mode for the requestedRefreshRate: "
+ + requestedRefreshRate + " on Display: " + displayId);
+ }
}
mDisplayModeDirector.getAppRequestObserver().setAppRequest(
displayId, requestedModeId, requestedMaxRefreshRate);