From: Nikolay Sivov <nsivov@codeweavers.com> Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com> --- dlls/comdlg32/filedlg.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/dlls/comdlg32/filedlg.c b/dlls/comdlg32/filedlg.c index 722b8839561..eb1b266da8d 100644 --- a/dlls/comdlg32/filedlg.c +++ b/dlls/comdlg32/filedlg.c @@ -999,10 +999,16 @@ static INT_PTR FILEDLG95_Handle_GetFilePath(HWND hwnd, DWORD size, LPVOID result len = SendMessageW( fodInfos->DlgInfos.hwndFileName, WM_GETTEXTLENGTH, 0, 0 ); if (len) { - filename = malloc( (len + 1) * sizeof(WCHAR) ); + if (!(filename = malloc((len + 1) * sizeof(WCHAR)))) + return -1; + SendMessageW( fodInfos->DlgInfos.hwndFileName, WM_GETTEXT, len + 1, (LPARAM)filename ); } - buffer = malloc( (len + 2 + MAX_PATH) * sizeof(WCHAR) ); + if (!(buffer = malloc((len + 2 + MAX_PATH) * sizeof(WCHAR)))) + { + free(filename); + return -1; + } if (len) { -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/11695