msi: Set dialog as parent in subsequent dialog.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=51576
Signed-off-by: Fabian Maurer <dark.shadow4@web.de>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
(cherry picked from commit 4b88e29052)
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
This commit is contained in:
Fabian Maurer 2021-09-12 01:56:58 +02:00 committed by Michael Stefaniuc
parent e08b8f0f86
commit 3bf9bae9bf
1 changed files with 4 additions and 2 deletions

View File

@ -3904,7 +3904,7 @@ static void process_pending_messages( HWND hdlg )
static UINT dialog_run_message_loop( msi_dialog *dialog )
{
DWORD style;
HWND hwnd;
HWND hwnd, parent;
if( uiThreadId != GetCurrentThreadId() )
return SendMessageW( hMsiHiddenWindow, WM_MSI_DIALOG_CREATE, 0, (LPARAM) dialog );
@ -3917,9 +3917,11 @@ static UINT dialog_run_message_loop( msi_dialog *dialog )
if (dialog->parent == NULL && (dialog->attributes & msidbDialogAttributesMinimize))
style |= WS_MINIMIZEBOX;
parent = dialog->parent ? dialog->parent->hwnd : 0;
hwnd = CreateWindowW( L"MsiDialogCloseClass", dialog->name, style,
CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT,
NULL, NULL, NULL, dialog );
parent, NULL, NULL, dialog );
if( !hwnd )
{
ERR("Failed to create dialog %s\n", debugstr_w( dialog->name ));