[Bug 49260] Notation Composer 4 (MFC app) freezes in CPropertySheet::DoModal on Mac OS X

WineHQ Bugzilla wine-bugs at winehq.org
Thu May 28 05:11:55 CDT 2020


https://bugs.winehq.org/show_bug.cgi?id=49260

--- Comment #6 from Anastasius Focht <focht at gmx.net> ---
Hello Reinhold,

I can see the point when you pressed the 'Finish' button on page 2
(active_page=1). The property sheet, including child controls are getting
destroyed in the process.

--- snip ---
...
006e:trace:win:WIN_CreateWindowEx "Assistent" #8002 ex=00010001 style=80c800c4
1,23 441x283 parent=0x20056 menu=0x0 inst=0x0 params=0x0
0071:Ret  ntdll.RtlAllocateHeap() retval=1ad9ef30 ret=1408b2ce7
006e:trace:win:dump_window_styles style: WS_POPUP WS_CAPTION WS_SYSMENU
000000c4
0071:Call KERNEL32.HeapFree(07c90000,00000000,1ad9ef30) ret=1408b2d60
006e:trace:win:dump_window_styles exstyle: WS_EX_DLGMODALFRAME
WS_EX_CONTROLPARENT
...
006e:trace:propsheet:PROPSHEET_CollectPageInfo Tab 2 L"Transpose Instrument Key
(step 2 of 2)"
006e:trace:propsheet:PROPSHEET_PropertySheet startpage: 0 of 3 pages
006e:trace:propsheet:PROPSHEET_CreateDialog (000000001CF48A00)
...
006e:Call dialog proc 0x6e729900
(hwnd=0x70274,msg=WM_INITDIALOG,wp=00130258,lp=1cf48a00)
006e:trace:propsheet:PROPSHEET_DialogProc hwnd=0000000000070274 msg=0x0110
wparam=130258 lparam=1cf48a00 
...
006e:trace:msg:peek_message got type 7 msg 201 (WM_LBUTTONDOWN) hwnd 0x70274 wp
1 lp 0 
...
006e:trace:msg:peek_message got type 7 msg 202 (WM_LBUTTONUP) hwnd 0x30264 wp 0
lp 0
...
006e:trace:propsheet:PROPSHEET_DialogProc hwnd=0000000000070274 msg=0x0111
wparam=3025 lparam=30264
006e:trace:propsheet:PROPSHEET_Finish active_page 1
...
006e:trace:propsheet:PROPSHEET_Finish msg result 0 
...
006e:trace:propsheet:PROPSHEET_DialogProc hwnd=0000000000070274 msg=0x0002
wparam=0 lparam=0
006e:trace:propsheet:PROPSHEET_CleanUp 
006e:trace:win:DestroyWindow (0x20294)
006e:trace:msg:WINPROC_CallProcWtoA
(hwnd=0x70274,msg=WM_PARENTNOTIFY,wp=00000002,lp=00020294)
006e:trace:win:WIN_SetWindowLong 0x70274 0 0 W
006e:trace:propsheet:PROPSHEET_DialogProc hwnd=0000000000070274 msg=0x0210
wparam=2 lparam=20294
006e:trace:msg:WINPROC_CallProcWtoA
(hwnd=0x20294,msg=WM_DESTROY,wp=00000000,lp=00000000)
...
006e:trace:msg:WINPROC_CallProcWtoA
(hwnd=0x70274,msg=WM_NCDESTROY,wp=00000000,lp=00000000)
006e:trace:win:WIN_SetWindowLong 0x70274 0 0 W
006e:trace:propsheet:PROPSHEET_DialogProc hwnd=0000000000070274 msg=0x0082
wparam=0 lparam=0
...
006e:trace:msg:PostMessageW hwnd 0x10020 msg 210 (WM_PARENTNOTIFY) wp 86 lp
20056
006e:Ret  user32.SetActiveWindow() retval=00070274 ret=140746689
006e:Call user32.DestroyWindow(00070274) ret=14073295e
006e:trace:win:DestroyWindow (0x70274) 
...
006e:Ret  window proc 0x140733e68
(hwnd=0x70274,msg=WM_NCDESTROY,wp=00000000,lp=00000000) retval=00000000
006e:Call winemac.drv.DestroyWindow(00070274) ret=6aa8cd72
006e:Ret  winemac.drv.DestroyWindow() retval=00000001 ret=6aa8cd72
006e:Ret  user32.DestroyWindow() retval=00000001 ret=14073295e
...
--- snip ---

Last part of main thread which pumps messages:

--- snip ---
...
006e:Ret  window proc 0x14046b610
(hwnd=0x2004c,msg=WM_MDIGETACTIVE,wp=00000000,lp=00000000) retval=00050256
006e:Ret  user32.SendMessageA() retval=00050256 ret=140756ab5
006e:Call user32.GetMenu(00020056) ret=14033b35e
006e:Ret  user32.GetMenu() retval=00000000 ret=14033b35e
006e:Call KERNEL32.ActivateActCtx(072ca640,0607ee68) ret=140739724
006e:Call ntdll.RtlActivateActivationContext(00000000,072ca640,0607ee68)
ret=7b02084b
006e:Ret  ntdll.RtlActivateActivationContext() retval=00000000 ret=7b02084b
006e:Ret  KERNEL32.ActivateActCtx() retval=00000001 ret=140739724
006e:Call user32.IsWindow(00020056) ret=14033dc41
006e:Ret  user32.IsWindow() retval=00000001 ret=14033dc41
006e:Call user32.IsWindowEnabled(00020056) ret=14033dc4e
006e:Ret  user32.IsWindowEnabled() retval=00000001 ret=14033dc4e
006e:Call user32.GetFocus() ret=14033de21
006e:Ret  user32.GetFocus() retval=00000000 ret=14033de21
006e:Call KERNEL32.DeactivateActCtx(00000000,073b0350) ret=140738901
006e:Call ntdll.RtlDeactivateActivationContext(00000000,073b0350) ret=7b0209a2
006e:Ret  ntdll.RtlDeactivateActivationContext() retval=00000001 ret=7b0209a2
006e:Ret  KERNEL32.DeactivateActCtx() retval=00000001 ret=140738901
006e:Call KERNEL32.DeactivateActCtx(00000000,1cf33e10) ret=140738901
006e:Call ntdll.RtlDeactivateActivationContext(00000000,1cf33e10) ret=7b0209a2
006e:Ret  ntdll.RtlDeactivateActivationContext() retval=00000001 ret=7b0209a2
006e:Ret  KERNEL32.DeactivateActCtx() retval=00000001 ret=140738901
006e:Call user32.CallWindowProcA(140733e68,00020056,00000021,00020056,02010002)
ret=14046b4fc 
006e:Call window proc 0x140733e68
(hwnd=0x20056,msg=WM_MOUSEACTIVATE,wp=00020056,lp=02010002)
006e:Call user32.DefFrameProcA(00020056,0002004c,00000021,00020056,02010002)
ret=140756964
006e:Ret  user32.DefFrameProcA() retval=00000003 ret=140756964
006e:Ret  window proc 0x140733e68
(hwnd=0x20056,msg=WM_MOUSEACTIVATE,wp=00020056,lp=02010002) retval=00000003
006e:Ret  user32.CallWindowProcA() retval=00000003 ret=14046b4fc
006e:Call user32.IsWindow(00020056) ret=14046b508
006e:Ret  user32.IsWindow() retval=00000001 ret=14046b508
006e:Call user32.IsWindow(00020056) ret=14046b59a
006e:Ret  user32.IsWindow() retval=00000001 ret=14046b59a
006e:Call KERNEL32.DeactivateActCtx(00000000,0736b1b0) ret=140738901
006e:Call ntdll.RtlDeactivateActivationContext(00000000,0736b1b0) ret=7b0209a2
006e:Ret  ntdll.RtlDeactivateActivationContext() retval=00000001 ret=7b0209a2
006e:Ret  KERNEL32.DeactivateActCtx() retval=00000001 ret=140738901
006e:Call user32.IsWindow(00020056) ret=14046b6e9
006e:Ret  user32.IsWindow() retval=00000001 ret=14046b6e9
006e:Ret  window proc 0x14046b610
(hwnd=0x20056,msg=WM_MOUSEACTIVATE,wp=00020056,lp=02010002) retval=00000003
006e:Ret  winemac.drv.MsgWaitForMultipleObjectsEx() retval=00000000
ret=6aaa15ed
006e:Call
winemac.drv.MsgWaitForMultipleObjectsEx(00000001,0607f958,ffffffff,000004ff,7ffe00000000)
ret=6aaa15ed
006e:Call
ntdll.NtWaitForMultipleObjects(00000001,0607f4f0,00000001,00000000,00000000)
ret=7b05b1b8
--- snip ---

Could be a focus loss issue but that's a shot in the dark.

So few more questions:

Did this ever work on Mac OS X? If yes:

- which Notation Composer version range
- did you switch MSVC++/MFC versions in between
- which Wine version range? 32-bit or 64-bit?
- which Mac OS X version (before El Capitan)?

Do you have any Mac OS X specific code paths in the app related to user
interface (MFC)?

What exactly do you mean by "freeze"? The app doesn't respond anymore to mouse
clicks? What happens if you try to resize the window (bottom right corner), no
redraw?

BTW did you change the default Windows version from 'Windows 7' to something
else in the WINEPREFIX? Some trace log lines seem to indicate that. If yes,
why.

Regards

-- 
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.



More information about the wine-bugs mailing list