[Bug 45514] Rekordbox 5.3.0 terminates with the message " Unexpected application error" (buggy Wine-awareness, broken ' user32.UpdateLayeredWindow' code paths)

wine-bugs at winehq.org wine-bugs at winehq.org
Sat Jul 28 13:41:45 CDT 2018


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

Anastasius Focht <focht at gmx.net> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                URL|                            |https://rekordbox.com/_app/
                   |                            |files/Install_rekordbox_x64
                   |                            |_5_3_0.zip
                 CC|                            |focht at gmx.net
             Status|UNCONFIRMED                 |RESOLVED
           Keywords|                            |download, win64
            Summary|rekordbox.exe: terminates   |Rekordbox 5.3.0 terminates
                   |with the message            |with the message
                   |"Unexpected application     |"Unexpected application
                   |error"                      |error" (buggy
                   |                            |Wine-awareness, broken
                   |                            |'user32.UpdateLayeredWindow
                   |                            |' code paths)
         Resolution|---                         |DUPLICATE

--- Comment #4 from Anastasius Focht <focht at gmx.net> ---
Hello folks,

confirming. The app is Wine-aware and does stupid things (broken Wine code
paths) -> dupe of bug 42497

--- snip ---
$ pwd
/home/focht/.wine/drive_c/Program Files/Pioneer/rekordbox 5.3.0

$ file *.{exe,dll}
edb_streamd.exe:                  PE32+ executable (console) x86-64, for MS
Windows
fixrevoke.exe:                    PE32 executable (console) Intel 80386, for MS
Windows
kill_daemon.exe:                  PE32+ executable (console) x86-64, for MS
Windows
LS-Unity-rekordbox-win-64bit.exe: PE32+ executable (GUI) x86-64, for MS Windows
Pioneer_MIX_ASIO_Config.exe:      PE32+ executable (GUI) x86-64, for MS Windows
PSvLinkSysMgr.exe:                PE32+ executable (GUI) x86-64, for MS Windows
PSvNFSd.exe:                      PE32+ executable (GUI) x86-64, for MS Windows
rbHttpServer.exe:                 PE32 executable (console) Intel 80386
(stripped to external PDB), for MS Windows
rbinit.exe:                       PE32 executable (console) Intel 80386, for MS
Windows
rekordbox.exe:                    PE32+ executable (GUI) x86-64, for MS Windows
Uninstall rekordbox.exe:          PE32 executable (GUI) Intel 80386, for MS
Windows
Upmgr rekordbox.exe:              PE32+ executable (GUI) x86-64, for MS Windows
vcredist_x64.exe:                 PE32 executable (GUI) Intel 80386, for MS
Windows
vcredist_x86.exe:                 PE32 executable (GUI) Intel 80386, for MS
Windows
libmpg123.dll:                    PE32+ executable (DLL) (console) x86-64
(stripped to external PDB), for MS Windows
libpulse.dll:                     PE32+ executable (DLL) (GUI) x86-64, for MS
Windows
NFSDaemon.dll:                    PE32+ executable (DLL) (GUI) x86-64, for MS
Windows
PioneerControllerMIX.dll:         PE32+ executable (DLL) (GUI) x86-64, for MS
Windows
sqlite3.dll:                      PE32+ executable (DLL) (GUI) x86-64, for MS
Windows
--- snip ---

--- snip ---
$ WINEDEBUG=+seh,+relay wine ./rekordbox.exe >>log.txt 2>&1
...
0030:Call KERNEL32.GetModuleHandleA(143273f8c "ntdll") ret=14052be33
0030:Ret  KERNEL32.GetModuleHandleA() retval=7bc80000 ret=14052be33
0030:Call KERNEL32.GetProcAddress(7bc80000,143273fb0 "wine_get_version")
ret=14052be4c
0030:Ret  KERNEL32.GetProcAddress() retval=7bc91ad0 ret=14052be4c 
...
0030:Call KERNEL32.LoadLibraryW(007dc4ac L"d2d1.dll") ret=14052a436
0030:Call PE DLL (proc=0x7f47917b0e54,module=0x7f47917a0000
L"d3d10core.dll",reason=PROCESS_ATTACH,res=(nil)) 
...
0030:Call KERNEL32.GetModuleHandleA(143273f8c "ntdll") ret=14133e09d
0030:Ret  KERNEL32.GetModuleHandleA() retval=7bc80000 ret=14133e09d
0030:Call KERNEL32.GetProcAddress(7bc80000,143273fb0 "wine_get_version")
ret=14133e0b2
0030:Ret  KERNEL32.GetProcAddress() retval=7bc91ad0 ret=14133e0b2
...
0030:Call shell32.ExtractAssociatedIconW(140000000,0023f020 L"C:\\Program
Files\\Pioneer\\rekordbox 5.3.0\\rekordbox.exe",0023ef60) ret=14057971e 
...
0030:Call KERNEL32.GetModuleHandleA(143273f8c "ntdll") ret=14133e09d
0030:Ret  KERNEL32.GetModuleHandleA() retval=7bc80000 ret=14133e09d
0030:Call KERNEL32.GetProcAddress(7bc80000,143273fb0 "wine_get_version")
ret=14133e0b2
0030:Ret  KERNEL32.GetProcAddress() retval=7bc91ad0 ret=14133e0b2 
...
0030:Call winex11.drv.SetWindowText(0001008e,02eb8ec0 L"ActivationEmailWindow")
ret=7f47947c92a1
0030:Ret  winex11.drv.SetWindowText() retval=00000001 ret=7f47947c92a1
0030:Ret  user32.DefWindowProcW() retval=00000001 ret=14057cef9
0030:Ret  window proc 0x14057c3a0
(hwnd=0x1008e,msg=WM_SETTEXT,wp=00000000,lp=02eb8e48) retval=00000001
0030:Ret  user32.SetWindowTextW() retval=00000001 ret=140577cf8
0030:Call KERNEL32.GetModuleHandleA(143273f8c "ntdll") ret=14133e09d
0030:Ret  KERNEL32.GetModuleHandleA() retval=7bc80000 ret=14133e09d
0030:Call KERNEL32.GetProcAddress(7bc80000,143273fb0 "wine_get_version")
ret=14133e0b2
0030:Ret  KERNEL32.GetProcAddress() retval=7bc91ad0 ret=14133e0b2 
...
0030:Call gdi32.SetMapMode(000c0059,00000001) ret=140577a3a
0030:Call user32.GetDpiForSystem() ret=7f47945f57bc
0030:Ret  user32.GetDpiForSystem() retval=00000060 ret=7f47945f57bc
0030:Call user32.GetDpiForSystem() ret=7f47945f57bc
0030:Ret  user32.GetDpiForSystem() retval=00000060 ret=7f47945f57bc
0030:Ret  gdi32.SetMapMode() retval=00000001 ret=140577a3a
0030:Call user32.GetWindowRect(0001007c,0023ce40) ret=140577a53
0030:Ret  user32.GetWindowRect() retval=00000001 ret=140577a53
0030:trace:seh:NtRaiseException code=c0000005 flags=0 addr=(nil) ip=0 tid=0030
0030:trace:seh:NtRaiseException  info[0]=0000000000000008
0030:trace:seh:NtRaiseException  info[1]=0000000000000000
0030:trace:seh:NtRaiseException  rax=000000000004005d rbx=0000000000000001
rcx=000000000001007c rdx=0000000000000000
0030:trace:seh:NtRaiseException  rsi=00000000000c0059 rdi=0000000001fe8e70
rbp=000000000001007c rsp=000000000023cda8
0030:trace:seh:NtRaiseException   r8=000000000023ce30  r9=000000000023ce28
r10=0000000000000000 r11=0000000000000000
0030:trace:seh:NtRaiseException  r12=0000000000000000 r13=0000000001934d90
r14=0000000000000001 r15=0000000001934e80
0030:trace:seh:RtlVirtualUnwind type 1 rip 140577b0f rsp 23cdb0 
...
--- snip ---

Relevant parts of app code:

--- snip ---
000000014133E080 | sub     rsp, 28 
000000014133E084 | mov     rcx, qword ptr ds:[143B60590]
000000014133E08B | test    rcx, rcx 
000000014133E08E | jne     rekordbox.14133E0F3           
000000014133E090 | lea     rcx, qword ptr ds:[143273F8C] ; "ntdll"
000000014133E097 | call    qword ptr ds:[1418175F0]      ; GetModuleHandleA()
000000014133E09D | test    rax, rax
000000014133E0A0 | je      rekordbox.14133E0C9
000000014133E0A2 | lea     rdx, qword ptr ds:[143273FB0] ; "wine_get_version"
000000014133E0A9 | mov     rcx, rax
000000014133E0AC | call    qword ptr ds:[1418175B0]      ; GetProcAddress()
000000014133E0B2 | test    rax, rax
000000014133E0B5 | je      rekordbox.14133E0C9 
000000014133E0B7 | mov     rcx, qword ptr ds:[143B60590] ; UpdateLayeredWindow
000000014133E0BE | test    rcx, rcx
000000014133E0C1 | setne   al 
000000014133E0C4 | add     rsp, 28
000000014133E0C8 | ret
000000014133E0C9 | lea     rcx, qword ptr ds:[143273E38] ; "user32.dll"
000000014133E0D0 | call    qword ptr ds:[1418175F0]      ; GetModuleHandleA()
000000014133E0D6 | lea     rdx, qword ptr ds:[14327AB98] ;
"UpdateLayeredWindow"
000000014133E0DD | mov     rcx, rax
000000014133E0E0 | call    qword ptr ds:[1418175B0]      ; GetProcAddress()   
000000014133E0E6 | mov     rcx, rax                       
000000014133E0E9 | mov     qword ptr ds:[143B60590], rax ; UpdateLayeredWindow
000000014133E0F0 | test    rax, rax
000000014133E0F3 | setne   al
000000014133E0F6 | add     rsp, 28
000000014133E0FA | ret
--- snip ---

--- snip ---
0000000140577A10 | mov     qword ptr ss:[rsp+20], rbx
0000000140577A15 | push    rbp                       
0000000140577A16 | push    rsi                       
0000000140577A17 | push    rdi                       
0000000140577A18 | sub     rsp, A0                   
0000000140577A1F | mov     rbp, rdx                  
0000000140577A22 | mov     rdi, rcx                  
0000000140577A25 | mov     edx, 1                    
0000000140577A2A | mov     rcx, r8                   
0000000140577A2D | movzx   ebx, r9b                  
0000000140577A31 | mov     rsi, r8                   
0000000140577A34 | call    qword ptr ds:[141817228]   ; gdi32.SetMapMode()
0000000140577A3A | test    bl, bl                    
0000000140577A3C | je      rekordbox.140577B11       
0000000140577A42 | lea     rdx, qword ptr ss:[rsp+90]
0000000140577A4A | mov     rcx, rbp                  
0000000140577A4D | call    qword ptr ds:[141817F60]   ; user32.GetWindowRect()
0000000140577A53 | mov     rcx, qword ptr ss:[rsp+90]
0000000140577A5B | mov     eax, dword ptr ss:[rsp+E0]
0000000140577A62 | mov     rdx, qword ptr ss:[rsp+98]
0000000140577A6A | neg     eax                       
0000000140577A6C | mov     dword ptr ss:[rsp+40], 2  
0000000140577A74 | mov     dword ptr ss:[rsp+88], eax
0000000140577A7B | mov     eax, dword ptr ss:[rsp+E8]
0000000140577A82 | mov     r8, rcx                   
0000000140577A85 | neg     eax                       
0000000140577A87 | shr     r8, 20                    
0000000140577A8B | mov     dword ptr ss:[rsp+80], ecx
0000000140577A92 | mov     dword ptr ss:[rsp+8C], eax
0000000140577A99 | mov     eax, edx                  
0000000140577A9B | shr     rdx, 20                   
0000000140577A9F | sub     eax, ecx                  
0000000140577AA1 | sub     edx, r8d                  
0000000140577AA4 | mov     dword ptr ss:[rsp+84], r8d
0000000140577AAC | mov     dword ptr ss:[rsp+78], eax
0000000140577AB0 | movzx   eax, byte ptr ss:[rsp+F0] 
0000000140577AB8 | xor     r8d, r8d                  
0000000140577ABB | mov     byte ptr ss:[rsp+72], al  
0000000140577ABF | lea     rax, qword ptr ss:[rsp+70]
0000000140577AC4 | mov     dword ptr ss:[rsp+7C], edx
0000000140577AC8 | mov     qword ptr ss:[rsp+38], rax
0000000140577ACD | mov     dword ptr ss:[rsp+30], r8d
0000000140577AD2 | lea     rax, qword ptr ss:[rsp+88]
0000000140577ADA | mov     qword ptr ss:[rsp+28], rax
0000000140577ADF | mov     rax, qword ptr ds:[rdi+D8]
0000000140577AE6 | lea     r9, qword ptr ss:[rsp+78] 
0000000140577AEB | lea     r8, qword ptr ss:[rsp+80] 
0000000140577AF3 | xor     edx, edx                  
0000000140577AF5 | mov     rcx, rbp                  
0000000140577AF8 | mov     qword ptr ss:[rsp+20], rax
0000000140577AFD | mov     byte ptr ss:[rsp+73], 1   
0000000140577B02 | mov     word ptr ss:[rsp+70], 0   
0000000140577B09 | call    qword ptr ds:[143B60590] ; NULL UpdateLayeredWindow
0000000140577B0F | jmp     rekordbox.140577B6C       
0000000140577B11 | mov     edx, dword ptr ds:[rdi+18]
0000000140577B14 | mov     r9d, dword ptr ds:[rdi+14]
0000000140577B18 | mov     dword ptr ss:[rsp+60], CC0020
0000000140577B20 | xor     r8d, r8d 
0000000140577B23 | lea     rax, qword ptr ds:[rdi+68]
0000000140577B27 | mov     rcx, rsi                  
0000000140577B2A | mov     dword ptr ss:[rsp+58], r8d
0000000140577B2F | mov     qword ptr ss:[rsp+50], rax
0000000140577B34 | mov     rax, qword ptr ds:[rdi+E0]
0000000140577B3B | mov     qword ptr ss:[rsp+48], rax
0000000140577B40 | mov     dword ptr ss:[rsp+40], edx
0000000140577B44 | mov     dword ptr ss:[rsp+38], r9d
0000000140577B49 | mov     dword ptr ss:[rsp+30], r8d
0000000140577B4E | mov     dword ptr ss:[rsp+28], r8d
0000000140577B53 | mov     r8d, dword ptr ss:[rsp+E8]
0000000140577B5B | mov     dword ptr ss:[rsp+20], edx
0000000140577B5F | mov     edx, dword ptr ss:[rsp+E0]
0000000140577B66 | call    qword ptr ds:[1418171B0]   ; gdi32.StretchDIBits()
0000000140577B6C | mov     rbx, qword ptr ss:[rsp+D8]
0000000140577B74 | add     rsp, A0                   
0000000140577B7B | pop     rdi                       
0000000140577B7C | pop     rsi                       
0000000140577B7D | pop     rbp                       
0000000140577B7E | ret                               
--- snip ---

Use Wine-Staging and 'Hide Wine version from applications' option in 'winecfg'
to work around this brain damage.

$ sha1sum Install_rekordbox_x64_5_3_0.*
da2aac3a54cdbb0122937eab67a8a83942b18679  Install_rekordbox_x64_5_3_0.zip

$ du -sh Install_rekordbox_x64_5_3_0.*
228M    Install_rekordbox_x64_5_3_0.zip
$ wine --version
wine-3.13

Regards

*** This bug has been marked as a duplicate of bug 42497 ***

-- 
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