From: "Zhiyi Zhang (@zhiyi)" Subject: Re: [PATCH 0/5] MR355: win32u: Move more display mode logic out of graphics drivers. Message-Id: Date: Fri, 01 Jul 2022 07:48:31 +0000 In-Reply-To: References: Zhiyi Zhang (@zhiyi) commented about dlls/winex11.drv/display.c: > return DISP_CHANGE_BADMODE; > } > > - if (!write_registry_settings(devname, full_mode)) > - { > - ERR("Failed to write %s display settings to registry.\n", wine_dbgstr_w(devname)); > - free_full_mode(full_mode); > - free(displays); > - return DISP_CHANGE_NOTUPDATED; > - } > - > + *devmode = *full_mode; Be very careful about dmDriverExtra. You are losing private driver data here. "memcpy(full_mode, found_mode, sizeof(*found_mode) + found_mode->dmDriverExtra)" is how full mode is populated. -- https://gitlab.winehq.org/wine/wine/-/merge_requests/355#note_3099