mirror of
https://github.com/ZDoom/gzdoom.git
synced 2024-11-10 23:01:50 +00:00
- fixed: GetDisplayDeviceName must always pick a valid monitor.
There is no default here, so if vid_adapter is invalid for whatever reason the engine would crash without a defined setting.
This commit is contained in:
parent
68597da75d
commit
327a83a54b
1 changed files with 2 additions and 2 deletions
|
@ -90,7 +90,7 @@ static BOOL CALLBACK GetDisplayDeviceNameMonitorEnumProc(HMONITOR hMonitor, HDC,
|
||||||
|
|
||||||
// This assumes the monitors are returned by EnumDisplayMonitors in the
|
// This assumes the monitors are returned by EnumDisplayMonitors in the
|
||||||
// order they're found in the Direct3D9 adapters list. Fingers crossed...
|
// order they're found in the Direct3D9 adapters list. Fingers crossed...
|
||||||
if (state->curIdx == vid_adapter)
|
if (state->curIdx == vid_adapter || state->hFoundMonitor == nullptr)
|
||||||
{
|
{
|
||||||
state->hFoundMonitor = hMonitor;
|
state->hFoundMonitor = hMonitor;
|
||||||
|
|
||||||
|
@ -119,7 +119,7 @@ void Win32BaseVideo::GetDisplayDeviceName()
|
||||||
MonitorEnumState mes;
|
MonitorEnumState mes;
|
||||||
|
|
||||||
mes.curIdx = 1;
|
mes.curIdx = 1;
|
||||||
mes.hFoundMonitor = 0;
|
mes.hFoundMonitor = nullptr;
|
||||||
|
|
||||||
// Could also use EnumDisplayDevices, I guess. That might work.
|
// Could also use EnumDisplayDevices, I guess. That might work.
|
||||||
if (EnumDisplayMonitors(0, 0, &GetDisplayDeviceNameMonitorEnumProc, LPARAM(&mes)))
|
if (EnumDisplayMonitors(0, 0, &GetDisplayDeviceNameMonitorEnumProc, LPARAM(&mes)))
|
||||||
|
|
Loading…
Reference in a new issue