https://git.reactos.org/?p=reactos.git;a=commitdiff;h=ee3ee2a65f66016063e7537b78e2dd7572a616a8

commit ee3ee2a65f66016063e7537b78e2dd7572a616a8
Author:     James Tabor <[email protected]>
AuthorDate: Wed Apr 8 14:49:38 2020 -0500
Commit:     James Tabor <[email protected]>
CommitDate: Wed Apr 8 14:49:38 2020 -0500

    [User32] Fix Dialog Hang
    
    Patch by JIRA contributor I_Kill_Bugs. See CORE-5078.
    
    Also: https://bugs.winehq.org/show_bug.cgi?id=48749
---
 win32ss/user/user32/windows/dialog.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/win32ss/user/user32/windows/dialog.c 
b/win32ss/user/user32/windows/dialog.c
index 1acb4f55306..c853e5f8ebd 100644
--- a/win32ss/user/user32/windows/dialog.c
+++ b/win32ss/user/user32/windows/dialog.c
@@ -936,8 +936,14 @@ static HWND DIALOG_CreateIndirect( HINSTANCE hInst, 
LPCVOID dlgTemplate,
 
            if (IsWindowEnabled( owner ))
            {
+               HWND captured = NULL;
                disabled_owner = owner;
                EnableWindow( disabled_owner, FALSE );
+
+               captured = GetCapture();
+
+               if (captured)
+                   SendMessageW(captured, WM_CANCELMODE, 0, 0);
            }
         }
         *modal_owner = owner;

Reply via email to