https://bugs.winehq.org/show_bug.cgi?id=50171
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Fixed by SHA1| |d896b1195d876085f7127accd44 | |5c3ecd504da3f Resolution|--- |FIXED
--- Comment #1 from Anastasius Focht focht@gmx.net --- Hello folks,
this is fixed by commit https://source.winehq.org/git/wine.git/commitdiff/d896b1195d876085f7127accd4... ("kernel32: Implement BaseThreadInitThunk in assembly also for PE builds.").
Thanks Alexandre
After the fix:
--- snip --- $ wine --version wine-5.22-39-g4807a8f588c
$ winedbg "c:\windows\syswow64\notepad.exe"
Wine-dbg>b mainCRTStartup Breakpoint 1 at 0x0000000000405280 mainCRTStartup in notepad
Wine-dbg>c
Stopped on breakpoint 1 at 0x0000000000405280 mainCRTStartup in notepad
Wine-dbg>x $esp 7b624240
Wine-dbg>disas 0x7b624240-0x10
# caller is BaseThreadInitThunk assembly wrapper
0x000000007b624230 WriteTapemark+0xa0 in kernel32: pushl %ebp 0x000000007b624231 WriteTapemark+0xa1 in kernel32: movl %esp,%ebp 0x000000007b624233 WriteTapemark+0xa3 in kernel32: pushl %ebx 0x000000007b624234 WriteTapemark+0xa4 in kernel32: movl 0x8(%ebp),%ebx 0x000000007b624237 WriteTapemark+0xa7 in kernel32: pushl 0x4(%ebp) 0x000000007b62423a WriteTapemark+0xaa in kernel32: pushl 0x4(%ebp) 0x000000007b62423d WriteTapemark+0xad in kernel32: pushl %ebx 0x000000007b62423e WriteTapemark+0xae in kernel32: call *%edx 0x000000007b624240 WriteTapemark+0xb0 in kernel32: movl %eax,0x0(%esp) 0x000000007b624243 WriteTapemark+0xb3 in kernel32: call 0x000000007b628c77 _RtlExitUserThread@4 in kernel32 --- snip ---
Before the fix:
--- snip --- $ export PATH=/home/focht/projects/wine/mainline-install-5.22-x86_64/bin:$PATH $ wine --version wine-5.22
Wine-dbg>b mainCRTStartup Breakpoint 1 at 0x0000000000405280 mainCRTStartup in notepad
Wine-dbg>c
Stopped on breakpoint 1 at 0x0000000000405280 mainCRTStartup in notepad
Wine-dbg>x $esp 7b624258
Wine-dbg>disas 0x7b624258-0x8
0x000000007b624250 BaseThreadInitThunk in kernel32: pushl %ebp 0x000000007b624251 BaseThreadInitThunk+0x1 in kernel32: movl %esp,%ebp 0x000000007b624253 BaseThreadInitThunk+0x3 in kernel32: pushl 0x8(%ebp) 0x000000007b624256 BaseThreadInitThunk+0x6 in kernel32: call *%edx 0x000000007b624258 BaseThreadInitThunk+0x8 in kernel32: pushl %eax 0x000000007b624259 BaseThreadInitThunk+0x9 in kernel32: call *0x7b639968 -> (invalid destination) 0x000000007b62425f BaseThreadInitThunk+0xf in kernel32: nop --- snip ---
Regards