Loading
SF: Virtual display ID conflict resolution
Currently, there are no safeguards against duplicate display IDs when creating displays of any kind (physical or virtual). In rare cases where duplicates occur, they cause critical failures in display management. This patch introduces: 1. Logic around virtual display creation to keep generating virtual display IDs until there is no collision with existing displays. 2. Avoidance logic and checks against display ID duplicates in SurfaceFlinger around creation of VirtualDisplaySnapshot. 3. Robust testing of SurfaceFlinger::acquireVirtualDisplay. Flag: com.android.graphics.surfaceflinger.flags.stable_edid_ids Bug: 421463837 Test: DisplayTransactionCommitTest#acquire*VirtualDisplayId* Change-Id: Ib666e4ddc5ce10cd7ee624ccd10c321d5c88d932