Zhiyi Zhang (@zhiyi) commented about dlls/win32u/sysparams.c:
+NTSTATUS WINAPI NtGdiDdDDIOpenAdapterFromDeviceName( D3DKMT_OPENADAPTERFROMDEVICENAME *desc ) +{ + D3DKMT_OPENADAPTERFROMLUID desc_luid; + unsigned int len, name_len = 0; + char name[MAX_PATH]; + BOOL found = FALSE; + struct gpu *gpu; + NTSTATUS status; + + TRACE( "desc %p.\n", desc ); + + if (!desc || !desc->pDeviceName) return STATUS_INVALID_PARAMETER; + + for (len = 0; len < ARRAY_SIZE(name) && desc->pDeviceName[len]; ++len) + { + if ((name[len] = toupper( desc->pDeviceName[len] )) == '#') pDeviceName is a Unicode string. But then I guess we can assume it only contains ASCII characters.
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/8111#note_104169