Rémi Bernon (@rbernon) commented about dlls/win32u/sysparams.c:
+ if (mode_index == *numinfoelements) + { + ret = ERROR_INSUFFICIENT_BUFFER; + goto done; + } + + /* Multiple targets can be driven by the same source, ensure a mode + * hasn't already been added for this source. + */ + if (!source_mode_exists(modeinfo, mode_index, adapter_index, &source_mode_index)) + { + set_mode_source_info(&modeinfo[mode_index], gpu_luid, adapter_index, &devmode); + source_mode_index = mode_index; + mode_index++; + } + set_path_source_info(&(pathinfo[path_index].sourceInfo), gpu_luid, adapter_index, source_mode_index);
if (!source_mode_exists( modeinfo, mode_index, adapter_index, &source_mode_index ))
{
set_mode_source_info( &modeinfo[mode_index], gpu_luid, adapter_index, &devmode );
source_mode_index = mode_index;
mode_index++;
}
set_path_source_info( &pathinfo[path_index].sourceInfo, gpu_luid, adapter_index, source_mode_index );
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/2957#note_35162