diff --git a/src/modules/fancyzones/FancyZonesLib/MonitorUtils.cpp b/src/modules/fancyzones/FancyZonesLib/MonitorUtils.cpp index 746b899cfd04..70209a16c040 100644 --- a/src/modules/fancyzones/FancyZonesLib/MonitorUtils.cpp +++ b/src/modules/fancyzones/FancyZonesLib/MonitorUtils.cpp @@ -222,7 +222,6 @@ namespace MonitorUtils std::vector GetDisplays() { auto allMonitors = FancyZonesUtils::GetAllMonitorInfo<&MONITORINFOEX::rcWork>(); - std::unordered_map displayDeviceIdxMap; std::vector result{}; for (auto& monitorData : allMonitors) @@ -237,7 +236,9 @@ namespace MonitorUtils bool foundActiveMonitor = false; - while(EnumDisplayDevicesW(monitorInfo.szDevice, displayDeviceIdxMap[monitorInfo.szDevice], &displayDevice, EDD_GET_DEVICE_INTERFACE_NAME)) + DWORD displayDeviceIndex = 0; + + while (EnumDisplayDevicesW(monitorInfo.szDevice, displayDeviceIndex, &displayDevice, EDD_GET_DEVICE_INTERFACE_NAME)) { Logger::info(L"Get display device for display {} : {}", monitorInfo.szDevice, displayDevice.DeviceID); if (WI_IsFlagSet(displayDevice.StateFlags, DISPLAY_DEVICE_ACTIVE) && @@ -247,6 +248,7 @@ namespace MonitorUtils foundActiveMonitor = true; break; } + displayDeviceIndex++; } if (foundActiveMonitor)