This last patch is a bit different. It fixes an issue, but I don't know enough about msi internals to tell how correct it is. If you don't mind, please take a look :)
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=51718 --- dlls/msi/dialog.c | 9 +++++++++ 1 file changed, 9 insertions(+)
diff --git a/dlls/msi/dialog.c b/dlls/msi/dialog.c index a99a9076946..f56141a0c09 100644 --- a/dlls/msi/dialog.c +++ b/dlls/msi/dialog.c @@ -3886,6 +3886,10 @@ static LRESULT WINAPI MSIDialog_WndProc( HWND hwnd, UINT msg, EnableWindow(dialog->parent->hwnd, TRUE); SetForegroundWindow(dialog->parent->hwnd); } + if (gUIhwnd == hwnd) + { + gUIhwnd = NULL; + } dialog->hwnd = NULL; return 0; case WM_NOTIFY: @@ -3933,6 +3937,11 @@ static UINT dialog_run_message_loop( msi_dialog *dialog ) return ERROR_FUNCTION_FAILED; }
+ if (!dialog->parent && !gUIhwnd) + { + gUIhwnd = hwnd; + } + if (parent) { EnableWindow(parent, FALSE); -- 2.33.0