SF: Sequential display mode IDs
If the supported display modes differ after a hotplug
assing the new modes new IDs. This way the old IDs will
self invalidate.
This breaks the assumption that the modes IDs are
equivalent to indices in the array of supported modes.
Bug: 159590486
Test: manually 0. device boots in 60hz mode
1. switch to 50hz from app
2. disconnect display
3. reconnect display
dumpsys SurfaceFlinger after each step to
verify mode IDs change as expected
Change-Id: I44c90e8151f31e998b43649dad73c51d6948195d
diff --git a/services/surfaceflinger/DisplayDevice.h b/services/surfaceflinger/DisplayDevice.h
index a94bfa2..7156613 100644
--- a/services/surfaceflinger/DisplayDevice.h
+++ b/services/surfaceflinger/DisplayDevice.h
@@ -208,7 +208,7 @@
hardware::graphics::composer::hal::PowerMode mPowerMode =
hardware::graphics::composer::hal::PowerMode::OFF;
- DisplayModeId mActiveModeId;
+ DisplayModePtr mActiveMode;
const DisplayModes mSupportedModes;
std::atomic<nsecs_t> mLastHwVsync = 0;