Bug#905090: wine-development: Causing SEGV when using Qt.
Hello,
just tried to reproduce the issue and was able to in a buster i386 VM.
Unfortunately winedbg does not take advantage of the automatic dbgsym pages.
Therefore running from a local package build directory gives this stack:
Backtrace:
=>0 0x7ea989c5 USER_SetWindowPos+0x25() [./dlls/user32/winpos.c:2220] in user32 (0x0060dac8)
1 0x7ea5cd7f handle_internal_message+0x1de(hwnd=0x10070, msg=<is not available>, wparam=0xc00) [./dlls/user32/message.c:1861] in user32 (0x0060db18)
2 0x7ea61998 peek_message+0x1987(msg=<is not available>, hwnd=(nil), first=<is not available>, last=<is not available>, flags=0x1, changed_mask=<is not available>) [./dlls/user32/message.c:2920] in user32 (0x0060de38)
3 0x7ea66cef PeekMessageW+0x79(msg_out=<couldn't compute location>, hwnd=<couldn't compute location>, first=<couldn't compute location>, last=<couldn't compute location>, flags=<couldn't compute location>) [./dlls/user32/message.c:3768] in user32 (0x0060dea8)
4 0x66b887bf in qt5core (+0x2487be) (0x0060fbb8)
5 0x025a9347 in qwindows (+0x79346) (0x0060fbf8)
6 0x66b27980 in qt5core (+0x1e797f) (0x0060fca8)
7 0x66b31bd9 in qt5core (+0x1f1bd8) (0x0060fd28)
8 0x0040189b in digitalclock (+0x189a) (0x0011c2d8)
Starting with some more verbosity leads to some PostMessageW call that puts
this message in some message queue:
$ WINEDEBUG=+win,+msg wine digitalclock.exe ...
003c:trace:msg:PostMessageW hwnd 0x2007e msg 80000001 (WM_WINE_SETWINDOWPOS) wp c00 lp 0
...
003c:trace:msg:peek_message got type 6 msg 80000001 (WM_WINE_SETWINDOWPOS) hwnd 0x2007e wp c00 lp 0
wine: Unhandled page fault on read access to 0x00000018 at address 0x7ea989c5 (thread 003c), starting debugger...
Another run in winedbg gives following stack where the message is entered into
the message queue:
$ wine winedbg digitalclock.exe
...
Wine-dbg>b PostMessageW
Wine-dbg>cont
Wine-dbg>cont
Wine-dbg>cont
...
Wine-dbg>bt
Backtrace:
=>0 0x7ea65cb0 PostMessageW(hwnd=0x40088, msg=0x80000001, wparam=0xc00, lparam=0) [./dlls/user32/message.c:3643] in user32 (0x0060f568)
1 0x7db6427e TABLET_PostTabletMessage+0x4d() in wintab32 (0x0060f598)
2 0x7db64e23 WTOpenW+0x4f2(hWnd=<couldn't compute location>, lpLogCtx=<couldn't compute location>, fEnable=<couldn't compute location>) [./dlls/wintab32/context.c:487] in wintab32 (0x0060f758)
3 0x02596789 in qwindows (+0x66788) (0x00040088)
See below for the relevant source.
I think following might happen:
- Qt executes following to get a copy of the default context.
WTInfoW -> WTInfoT -> LoadTablet -> LoadTabletInfo==X11DRV_LoadTabletInfo.
In X11DRV_LoadTabletInfo the default context gets WT_DEFBASE(0x7FF0)
assigned to member lcMsgBase in line 522.
Some lines later is decided whether the device is usable
by wintab32.dll and if yes add_system_cursor is called that
increments gNumCursors.
In every case X11DRV_LoadTabletInfo returns TRUE here.
Therefore we continue here:
WTInfoW -> WTInfoT -> pWTInfoW==X11DRV_WTInfoW
As gNumCursors is 0 we do in line 1134 "if (0 == gNumCursors)" copy
nothing and return 0 bytes copied.
Unfortunately Qt does not check the return value of the WTInfoT call.
- Qt continues now to call wTOpen==WTOpenW assuming that we received a copy
of the default context which we have not.
Near the end WTOpenW wants to post a message:
_WT_CTXOVERLAP(newcontext->context.lcMsgBase)
Unfortunately lcMsgBase was not properly initialized and contains some "random" data.
In our case it is quite reproducible as the resulting message is always
WM_WINE_SETWINDOWPOS instead of WT_DEFBASE+4.
- Later USER_SetWindowPos expects the parameter lparam to contain
a pointer to a WINDOWPOS struct.
But the lparam is filled also from the context's lcStatus and contains also
some "random" data and the process crashes.
I assume this worked before just because this resulting "random" window message
was just not used and therefore ignored.
I tried 3.12-2 from snapshot.debian.org and that did not crash.
When trying to run with e.g. WINEDEBUG=+win,+msg,+wintab32 the crash does also not happen.
Attached are some more information on my debugging and a patch that would
return FALSE from X11DRV_LoadTabletInfo in case no usable device was found.
Kind regards,
Bernhard
In Qt we might be in that location:
http://code.qt.io/cgit/qt/qtbase.git/tree/src/plugins/platforms/windows/qwindowstabletsupport.cpp
230 QWindowsTabletSupport *QWindowsTabletSupport::create()
231 {
232 if (!m_winTab32DLL.init())
233 return 0;
234 const HWND window = QWindowsContext::instance()->createDummyWindow(QStringLiteral("TabletDummyWindow"),
235 L"TabletDummyWindow",
236 qWindowsTabletSupportWndProc);
237 if (!window) {
238 qCWarning(lcQpaTablet) << __FUNCTION__ << "Unable to create window for tablet.";
239 return 0;
240 }
241 LOGCONTEXT lcMine;
242 // build our context from the default context
243 QWindowsTabletSupport::m_winTab32DLL.wTInfo(WTI_DEFSYSCTX, 0, &lcMine); <-- return value is not checked ...
244 qCDebug(lcQpaTablet) << "Default: " << lcMine;
245 // Go for the raw coordinates, the tablet event will return good stuff
246 lcMine.lcOptions |= CXO_MESSAGES | CXO_CSRMESSAGES;
247 lcMine.lcPktData = lcMine.lcMoveMask = PACKETDATA;
248 lcMine.lcPktMode = PacketMode;
249 lcMine.lcOutOrgX = 0;
250 lcMine.lcOutExtX = lcMine.lcInExtX;
251 lcMine.lcOutOrgY = 0;
252 lcMine.lcOutExtY = -lcMine.lcInExtY;
253 qCDebug(lcQpaTablet) << "Requesting: " << lcMine;
254 const HCTX context = QWindowsTabletSupport::m_winTab32DLL.wTOpen(window, &lcMine, true); <-- ... and still context is used here.
255 if (!context) {
Description: Avoid crash by returning false from LoadTabletInfo if no usable device is found.
Bug-Debian: https://bugs.debian.org/905090
Forwarded: no
Last-Update: 2018-08-11
--- wine-development-3.13.orig/dlls/winex11.drv/wintab.c
+++ wine-development-3.13/dlls/winex11.drv/wintab.c
@@ -769,6 +769,12 @@ BOOL CDECL X11DRV_LoadTabletInfo(HWND hw
WARN("Did not find a valid stylus, unable to determine system context parameters. Wintab is disabled.\n");
}
+ if (0 == gNumCursors)
+ {
+ WARN("No usable touch screen device found.\n");
+ return FALSE;
+ }
+
return TRUE;
}
apt update
apt install xserver-xorg lightdm openbox pulseaudio xterm psmisc htop mc tmux dpkg-dev devscripts quilt strace gdb valgrind systemd-coredump
apt install libz-mingw-w64
apt install wine-development wine32-development-dbgsym libwine-development-dbgsym
wget http://snapshot.debian.org/archive/debian/20170829T174458Z/pool/main/u/unicode-data/unicode-data_10.0.0-3_all.deb
dpkg -i unicode-data_10.0.0-3_all.deb
apt build-dep wine-development
(mkdir wine/orig; cd wine/orig; apt source wine32-development-dbgsym)
export DISPLAY=:0
wine winecfg
wget http://www.dependencywalker.com/depends22_x86.zip
wget https://osdn.net/projects/csp-qt/downloads/69866/Qt-5.11.1.Win32.homebrew.MinGW-w64.gcc8.2.i686.tar.xz/ -O Qt-5.11.1.Win32.homebrew.MinGW-w64.gcc8.2.i686.tar.xz
cd .wine/drive_c/
cp /usr/i686-w64-mingw32/lib/zlib1.dll . -a
unzip ../../depends22_x86.zip -d depends22_x86
tar -axf /home/benutzer/Qt-5.11.1.Win32.homebrew.MinGW-w64.gcc8.2.i686.tar.xz
mkdir test
cd test
cp -a ../Qt-5.11.1.Win32.homebrew.MinGW-w64.gcc8.2.i686/usr.local/i586-mingw-msvc/5.11.1/mingw_82x/examples/widgets/widgets/digitalclock/digitalclock.exe .
cp -a ../Qt-5.11.1.Win32.homebrew.MinGW-w64.gcc8.2.i686/usr.local/i586-mingw-msvc/gcc-8.2/i686-w64-mingw32/8.2-win32/libstdc++-6.dll .
cp -a ../Qt-5.11.1.Win32.homebrew.MinGW-w64.gcc8.2.i686/usr.local/i586-mingw-msvc/gcc-8.2/i686-w64-mingw32/8.2-win32/libgcc_s_sjlj-1.dll .
cp -a ../Qt-5.11.1.Win32.homebrew.MinGW-w64.gcc8.2.i686/usr.local/i586-mingw-msvc/5.11.1/mingw_82x/bin/Qt5Core.dll .
cp -a ../Qt-5.11.1.Win32.homebrew.MinGW-w64.gcc8.2.i686/usr.local/i586-mingw-msvc/5.11.1/mingw_82x/bin/Qt5Gui.dll .
cp -a ../Qt-5.11.1.Win32.homebrew.MinGW-w64.gcc8.2.i686/usr.local/i586-mingw-msvc/5.11.1/mingw_82x/bin/Qt5Widgets.dll .
cp -a ../Qt-5.11.1.Win32.homebrew.MinGW-w64.gcc8.2.i686/usr.local/i586-mingw-msvc/icu/lib/icuin57.dll .
cp -a ../Qt-5.11.1.Win32.homebrew.MinGW-w64.gcc8.2.i686/usr.local/i586-mingw-msvc/icu/lib/icuuc57.dll .
cp -a ../Qt-5.11.1.Win32.homebrew.MinGW-w64.gcc8.2.i686/usr.local/i586-mingw-msvc/icu/lib/icudt57.dll .
cp -a ../Qt-5.11.1.Win32.homebrew.MinGW-w64.gcc8.2.i686/usr.local/i586-mingw-msvc/pcre2-10.30/bin/libpcre2-16-0.dll .
cp -a /usr/i686-w64-mingw32/lib/zlib1.dll .
cp -a ../Qt-5.11.1.Win32.homebrew.MinGW-w64.gcc8.2.i686/usr.local/i586-mingw-msvc/5.11.1/mingw_82x/plugins/platforms .
cp -a ../Qt-5.11.1.Win32.homebrew.MinGW-w64.gcc8.2.i686/usr.local/i586-mingw-msvc/5.11.1/mingw_82x/plugins/styles .
# wine c:\\depends22_x86\\depends.exe digitalclock.exe
# wine digitalclock.exe
winedbg digitalclock.exe
#winedbg
# Wine-dbg>info proc
# pid threads executable (all id:s are in hex)
# ...
# 00000008 2 'digitalclock.exe'
#winedbg --gdb 8
## attach with --gdb does not work
gdb -q --pid $(pgrep digitalclock)
wine --version
wine-3.11 (Debian 3.11-1)
Sources changed to unstable:
deb http://192.168.178.25:9999/debian-unstable-ftp.de.debian.org/ unstable main
deb-src http://192.168.178.25:9999/debian-unstable-ftp.de.debian.org/ unstable main
deb http://192.168.178.25:9999/debian-buster-debug.mirrors.debian.org/ unstable-debug main
apt install wine-development wine32-development-dbgsym libwine-development-dbgsym
wine --version
wine-3.13 (Debian 3.13-3)
########################
$ wine digitalclock.exe
wine: Unhandled page fault on read access to 0x00000018 at address 0x7fa789c5 (thread 0009), starting debugger...
Unhandled exception: page fault on read access to 0x00000018 in 32-bit code (0x7fa789c5).
Register dump:
CS:0073 SS:007b DS:007b ES:007b FS:003b GS:0033
EIP:7fa789c5 ESP:0060d9c0 EBP:0060dac8 EFLAGS:00010246( R- -- I Z- -P- )
EAX:00000000 EBX:7fabcf40 ECX:00000000 EDX:0001004c
ESI:00000000 EDI:00000c00
Stack dump:
0x0060d9c0: 00000005 0060dc14 00000040 b7d64237
0x0060d9d0: 00000000 00000000 b7bff439 3fff8000
0x0060d9e0: 7bce3cbc 0060dc14 7bc8019f 7bce3cbc
0x0060d9f0: 0060dc14 0060da7c 0060da58 7bc814f3
0x0060da00: 00000000 694c0000 0078756e 00000000
0x0060da10: 00000000 00000000 00000000 00000000
Backtrace:
=>0 0x7fa789c5 in user32 (+0x989c5) (0x0060dac8)
1 0x7fa3cd7f in user32 (+0x5cd7e) (0x0060db18)
2 0x7fa41998 in user32 (+0x61997) (0x0060de38)
3 0x7fa46cef in user32 (+0x66cee) (0x0060dea8)
4 0x66b887bf in qt5core (+0x2487be) (0x0060fbb8)
5 0x025a9347 in qwindows (+0x79346) (0x0060fbf8)
6 0x66b27980 in qt5core (+0x1e797f) (0x0060fca8)
7 0x66b31bd9 in qt5core (+0x1f1bd8) (0x0060fd28)
8 0x0040189b in digitalclock (+0x189a) (0x0011c508)
9 0x0011c508 (0x0011c508)
10 0x0011c508 (0x0011c508)
...
200 0x0011c508 (0x0011c508)
0x7fa789c5: movl 0x18(%esi),%eax
Modules:
Module Address Debug info Name (37 modules)
PE 400000- 40b000 Export digitalclock
PE 610000- 1ea6000 Deferred icudt57
PE 1eb0000- 241d000 Deferred qt5gui
PE 2530000- 26c9000 Export qwindows
PE 63080000-630a3000 Deferred zlib1
PE 66400000-66925000 Deferred qt5widgets
PE 66940000-66e2a000 Export qt5core
PE 67c80000-67d0d000 Deferred libpcre2-16-0
PE 6d0c0000-6d1e8000 Deferred libgcc_s_sjlj-1
PE 6de40000-6e0c2000 Deferred icuin57
PE 6fe40000-70b17000 Deferred libstdc++-6
PE 70ec0000-70ef3000 Deferred qwindowsvistastyle
PE 71480000-7161d000 Deferred icuuc57
PE 7b420000-7b5c6000 Deferred kernel32
PE 7bc10000-7bc14000 Deferred ntdll
PE 7eae0000-7eae3000 Deferred wintab32
PE 7ed60000-7ed64000 Deferred winex11
PE 7ee00000-7ee08000 Deferred oleaut32
PE 7ef20000-7ef24000 Deferred imm32
PE 7f130000-7f134000 Deferred uxtheme
PE 7f170000-7f174000 Deferred dwmapi
PE 7f180000-7f189000 Deferred msacm32
PE 7f1b0000-7f228000 Deferred winmm
PE 7f270000-7f273000 Deferred userenv
PE 7f290000-7f298000 Deferred shlwapi
PE 7f310000-7f4d9000 Deferred shell32
PE 7f5d0000-7f5f8000 Deferred ole32
PE 7f720000-7f724000 Deferred ws2_32
PE 7f780000-7f784000 Deferred iphlpapi
PE 7f7b0000-7f7b4000 Deferred rpcrt4
PE 7f830000-7f833000 Deferred netapi32
PE 7f860000-7f86a000 Deferred mpr
PE 7f880000-7f884000 Deferred version
PE 7f8b0000-7f8b7000 Deferred gdi32
PE 7f9e0000-7fac7000 Export user32
PE 7fbf0000-7fbf4000 Deferred msvcrt
PE 7fca0000-7fca4000 Deferred advapi32
Threads:
process tid prio (all id:s are in hex)
00000008 (D) C:\test\digitalclock.exe
0000002e 0
00000009 0 <==
0000000e services.exe
00000026 0
00000020 0
0000001a 0
00000017 0
00000016 0
00000015 0
00000010 0
0000000f 0
00000011 winedevice.exe
0000001d 0
0000001c 0
0000001b 0
00000019 0
00000018 0
00000012 0
00000013 explorer.exe
00000029 0
00000027 0
00000025 0
00000014 0
0000001e plugplay.exe
00000022 0
00000021 0
0000001f 0
00000023 winedevice.exe
0000002d 0
0000002c 0
0000002b 0
0000002a 0
00000028 0
00000024 0
System information:
Wine build: wine-3.13 (Debian 3.13-3)
Platform: i386
Version: Windows 7
Host system: Linux
Host version: 4.17.0-1-686-pae
.
########################
set height 0
set width 0
set pagination 0
directory /home/benutzer/wine/orig/wine-development-3.13/dlls/user32
$ gdb -q --pid $(pgrep digitalclock)
Attaching to process 4616
[New LWP 4656]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/i386-linux-gnu/libthread_db.so.1".
0xb7f13d39 in __kernel_vsyscall ()
(gdb) set height 0
(gdb) set width 0
(gdb) set pagination 0
(gdb) bt
#0 0xb7f13d39 in __kernel_vsyscall ()
#1 0xb7d38347 in __libc_read (fd=7, buf=0x3fffb0fc, nbytes=16) at ../sysdeps/unix/sysv/linux/read.c:27
#2 0x7bc80277 in wait_select_reply (cookie=0x3fffb168) at ../../include/winnt.h:2463
#3 0x7bc81883 in server_select (select_op=0x0, size=0, flags=2, timeout=0x3fffb298) at server.c:618
#4 0x7bc460a3 in wait_suspend (context=0x3fffb990) at exception.c:127
#5 0x7bc8326f in usr1_handler (signal=10, siginfo=0x3fffbc8c, sigcontext=0x3fffbd0c) at signal_i386.c:2214
#6 <signal handler called>
#7 0xb7f13d37 in __kernel_vsyscall ()
#8 0xb7d38347 in __libc_read (fd=7, buf=0x60cdcc, nbytes=16) at ../sysdeps/unix/sysv/linux/read.c:27
#9 0x7bc80277 in wait_select_reply (cookie=0x60ce38) at ../../include/winnt.h:2463
#10 0x7bc81883 in server_select (select_op=0x60cf48, size=12, flags=2, timeout=0x0) at server.c:618
#11 0x7bc88a65 in wait_objects (count=<optimized out>, handles=<optimized out>, wait_any=<optimized out>, alertable=0 '\000', timeout=0x0) at sync.c:1031
#12 0x7bc8af7f in NtWaitForMultipleObjects (count=2, handles=0x60d0ec, wait_any=1 '\001', alertable=0 '\000', timeout=0x0) at sync.c:1042
#13 0x7b47755a in WaitForMultipleObjectsEx (count=2, handles=0x60d374, wait_all=0, timeout=4294967295, alertable=0) at sync.c:121
#14 0x7b4776e3 in WaitForMultipleObjectsEx (count=2, handles=0x60d374, wait_all=0, timeout=4294967295, alertable=0) at sync.c:213
#15 0x7b4777d3 in WaitForMultipleObjects (count=2, handles=0x60d374, wait_all=0, timeout=4294967295) at sync.c:180
#16 0x7b43e81b in start_debugger (epointers=0x60d524, hEvent=0xb0) at except.c:319
#17 0x7b43ed35 in UnhandledExceptionFilter (epointers=<optimized out>) at except.c:362
#18 0x7b489cc6 in __wine_exception_handler (record=0x60d968, frame=0x60ff08, context=0x60d69c, pdispatcher=0x60d5e8) at exception.c:90
#19 0x7bc82ce9 in call_exception_handler () from /usr/lib/wine-development/../i386-linux-gnu/wine-development/ntdll.dll.so
#20 0x7bc82cbb in EXC_CallHandler () from /usr/lib/wine-development/../i386-linux-gnu/wine-development/ntdll.dll.so
#21 0x7bc855b3 in NtRaiseException (rec=<optimized out>, context=<optimized out>, first_chance=<optimized out>) at signal_i386.c:640
#22 0x7bc85a06 in raise_segv_exception (rec=<optimized out>, context=<optimized out>) at signal_i386.c:1936
#23 0xdeadbabe in ?? ()
#24 0x0060d968 in ?? ()
#25 0x7fa3cd7f in handle_internal_message (hwnd=0x0, msg=<optimized out>, wparam=3072, lparam=0) at message.c:1861
#26 0x7fa41998 in peek_message (msg=<optimized out>, hwnd=0x0, first=<optimized out>, last=<optimized out>, flags=1, changed_mask=<optimized out>) at message.c:2920
#27 0x7fa46cef in PeekMessageW (msg_out=<optimized out>, hwnd=<optimized out>, first=<optimized out>, last=<optimized out>, flags=<optimized out>) at message.c:3768
#28 0x66b887bf in ?? ()
#29 0x025a9347 in ?? ()
#30 0x66b27980 in ?? ()
#31 0x66b31bd9 in ?? ()
#32 0x0040189b in ?? ()
Backtrace stopped: previous frame inner to this frame (corrupt stack?)
(gdb) disassemble handle_internal_message
Dump of assembler code for function handle_internal_message:
0x7fa3cba0 <+0>: push %ebp
...
0x7fa3cd5d <+445>: call 0x7f9e9150 <wine_dbg_log@plt>
0x7fa3cd62 <+450>: add $0x20,%esp
0x7fa3cd65 <+453>: xor %eax,%eax
0x7fa3cd67 <+455>: jmp 0x7fa3cbf8 <handle_internal_message+88>
0x7fa3cd6c <+460>: lea 0x0(%esi,%eiz,1),%esi
0x7fa3cd70 <+464>: sub $0x4,%esp
0x7fa3cd73 <+467>: push $0x0
0x7fa3cd75 <+469>: push $0x0
0x7fa3cd77 <+471>: pushl 0x8(%ebp)
0x7fa3cd7a <+474>: call 0x7fa789a0 <USER_SetWindowPos> <- Frame #1 called here.
0x7fa3cd7f <+479>: add $0x10,%esp
....
End of assembler dump.
(gdb)
(gdb) disassemble USER_SetWindowPos
Dump of assembler code for function USER_SetWindowPos:
0x7fa789a0 <+0>: push %ebp
0x7fa789a1 <+1>: mov %esp,%ebp
0x7fa789a3 <+3>: push %edi
0x7fa789a4 <+4>: push %esi
0x7fa789a5 <+5>: push %ebx
0x7fa789a6 <+6>: call 0x7f9e92e0 <__x86.get_pc_thunk.bx>
0x7fa789ab <+11>: add $0x44595,%ebx
0x7fa789b1 <+17>: sub $0xfc,%esp
0x7fa789b7 <+23>: mov 0x8(%ebp),%esi
0x7fa789ba <+26>: mov %gs:0x14,%eax
0x7fa789c0 <+32>: mov %eax,-0x1c(%ebp)
0x7fa789c3 <+35>: xor %eax,%eax
0x7fa789c5 <+37>: mov 0x18(%esi),%eax <- This instruction is failing.
0x7fa789c8 <+40>: mov (%esi),%edx
0x7fa789ca <+42>: mov %eax,-0xdc(%ebp)
0x7fa789d0 <+48>: test $0x4,%al
0x7fa789d2 <+50>: jne 0x7fa78a40 <USER_SetWindowPos+160>
...
End of assembler dump.
(gdb)
(gdb) disassemble /m 0x7fa789a0,0x7fa789d2
Dump of assembler code from 0x7fa789a0 to 0x7fa789d2:
2216 {
0x7fa789a0 <USER_SetWindowPos+0>: push %ebp
0x7fa789a1 <USER_SetWindowPos+1>: mov %esp,%ebp
0x7fa789a3 <USER_SetWindowPos+3>: push %edi
0x7fa789a4 <USER_SetWindowPos+4>: push %esi
0x7fa789a5 <USER_SetWindowPos+5>: push %ebx
0x7fa789a6 <USER_SetWindowPos+6>: call 0x7f9e92e0 <__x86.get_pc_thunk.bx>
0x7fa789ab <USER_SetWindowPos+11>: add $0x44595,%ebx
0x7fa789b1 <USER_SetWindowPos+17>: sub $0xfc,%esp
0x7fa789b7 <USER_SetWindowPos+23>: mov 0x8(%ebp),%esi
0x7fa789ba <USER_SetWindowPos+26>: mov %gs:0x14,%eax
0x7fa789c0 <USER_SetWindowPos+32>: mov %eax,-0x1c(%ebp)
0x7fa789c3 <USER_SetWindowPos+35>: xor %eax,%eax
2217 RECT old_window_rect, old_client_rect, new_window_rect, new_client_rect, valid_rects[2];
2218 UINT orig_flags;
2219
2220 orig_flags = winpos->flags;
0x7fa789c5 <USER_SetWindowPos+37>: mov 0x18(%esi),%eax
0x7fa789c8 <USER_SetWindowPos+40>: mov (%esi),%edx
0x7fa789ca <USER_SetWindowPos+42>: mov %eax,-0xdc(%ebp)
2221
2222 /* First, check z-order arguments. */
2223 if (!(winpos->flags & SWP_NOZORDER))
0x7fa789d0 <USER_SetWindowPos+48>: test $0x4,%al
0x7fa789d2 <USER_SetWindowPos+50>: jne 0x7fa78a40 <USER_SetWindowPos+160>
End of assembler dump.
(gdb) list winpos.c:2215,+50
2215 BOOL USER_SetWindowPos( WINDOWPOS * winpos, int parent_x, int parent_y )
2216 {
2217 RECT old_window_rect, old_client_rect, new_window_rect, new_client_rect, valid_rects[2];
2218 UINT orig_flags;
2219
2220 orig_flags = winpos->flags;
2221
2222 /* First, check z-order arguments. */
2223 if (!(winpos->flags & SWP_NOZORDER))
2224 {
2225 /* fix sign extension */
(gdb) up
#1 0xb7d38347 in __libc_read (fd=7, buf=0x3fffb0fc, nbytes=16) at ../sysdeps/unix/sysv/linux/read.c:27
...
(gdb) up
#25 0x7fa3cd7f in handle_internal_message (hwnd=0x0, msg=<optimized out>, wparam=3072, lparam=0) at message.c:1861
1861 return USER_SetWindowPos( (WINDOWPOS *)lparam, 0, 0 );
(gdb) print hwnd
$1 = (HWND) 0x0
########################
dpkg --purge libwine-development:i386 libwine-development-dbgsym:i386 wine-development wine32-development wine32-development-dbgsym
apt install wine-development wine32-development-dbgsym libwine-development-dbgsym
Back to 3.11-1 -> no crash, window shown normally
########################
dpkg --purge libwine-development:i386 libwine-development-dbgsym:i386 wine-development wine32-development wine32-development-dbgsym
wget http://snapshot.debian.org/archive/debian/20180712T103326Z/pool/main/w/wine-development/wine32-development_3.12-2_i386.deb
wget http://snapshot.debian.org/archive/debian/20180712T103326Z/pool/main/w/wine-development/libwine-development_3.12-2_i386.deb
wget http://snapshot.debian.org/archive/debian/20180712T103326Z/pool/main/w/wine-development/wine-development_3.12-2_all.deb
dpkg -i wine-development_3.12-2_all.deb wine32-development_3.12-2_i386.deb libwine-development_3.12-2_i386.deb
3.12-2 is also working ... time for git bisect ...
########################
not reproducible on amd64 desktop with self built 32bit wine 3.13 ...
########################
mkdir wine/orig -p
cd wine/orig
apt source wine-development
directory /home/benutzer/wine/orig/wine-development-3.13/dlls/user32
########################
export DISPLAY=:0
export WINEPREFIX=/home/benutzer/wineprefix-3.13-3
wine wineboot
cd $WINEPREFIX/drive_c/
cp -a /home/benutzer/test .
cd test
wine notepad &
WINEDEBUG=+win wine digitalclock.exe 2>&1 | tee -a ~/trace_$(date +%Y-%m-%d_%H-%M-%S).log
(gdb) list 1853,1862
1853 static LRESULT handle_internal_message( HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam )
1854 {
1855 switch(msg)
1856 {
...
1859 case WM_WINE_SETWINDOWPOS:
1860 if (is_desktop_window( hwnd )) return 0;
1861 return USER_SetWindowPos( (WINDOWPOS *)lparam, 0, 0 );
002f:trace:win:WIN_CreateWindowEx L"digitalclock" L"Qt5QWindowIcon" ex=00000000 style=86cf0000 433,331 158x87 parent=(nil) menu=(nil) inst=0x400000 params=(nil)
002f:trace:win:dump_window_styles style: WS_POPUP WS_CLIPSIBLINGS WS_CLIPCHILDREN WS_CAPTION WS_SYSMENU WS_THICKFRAME WS_MINIMIZEBOX WS_MAXIMIZEBOX
002f:trace:win:dump_window_styles exstyle:
002f:trace:win:GetWindowRect hwnd 0x1007c (0,0)-(0,0)
002f:trace:win:GetWindowRect hwnd 0x1007c (0,0)-(0,0)
002f:trace:win:WINPOS_GetMinMaxInfo 1032 776 / -4 -4 / 1036 780 / 112 27
002f:trace:win:GetWindowRect hwnd 0x1007c (433,331)-(591,418)
002f:trace:win:invalidate_dce 0x1007c parent 0x10020 (433,331)-(591,418) ((0,0)-(0,0))
002f:trace:win:invalidate_dce 0x3c0041: hwnd 0x10020 dcx 00000013 Cache
002f:trace:win:invalidate_dce 0x1c0039: hwnd 0x10020 dcx 00000013 Cache InUse
002f:trace:win:set_window_pos win 0x1007c surface (nil) -> (nil)
002f:trace:win:WIN_CreateWindowEx hwnd 0x1007c cs 433,331 158x87
002f:trace:win:WIN_CreateWindowEx register IME window for 0x1007c
002f:trace:win:GetWindowRect hwnd 0x1007c (433,331)-(591,418)
002f:trace:win:invalidate_dce 0x1007c parent 0x10020 (433,331)-(591,418) ((433,331)-(591,418))
002f:trace:win:invalidate_dce 0x3c0041: hwnd 0x10020 dcx 00000013 Cache
002f:trace:win:invalidate_dce 0x1c0039: hwnd 0x10020 dcx 00000013 Cache InUse
002f:trace:win:set_window_pos win 0x1007c surface (nil) -> (nil)
002f:trace:win:WIN_CreateWindowEx created window 0x1007c
002f:trace:win:SetWindowPos hwnd 0x1007c, after (nil), 0,0 (0x0), flags 00001837
002f:trace:win:dump_winpos_flags flags: SWP_NOSIZE SWP_NOMOVE SWP_NOZORDER SWP_NOACTIVATE SWP_FRAMECHANGED SWP_NOCLIENTSIZE SWP_NOCLIENTMOVE
002f:trace:win:SWP_DoWinPosChanging hwnd 0x1007c, after (nil), swp 0,0 0x0 flags 00001837
002f:trace:win:SWP_DoWinPosChanging current (433,331)-(591,418) style 86cf0000 new (433,331)-(591,418)
002f:trace:win:GetWindowPlacement 0x1007c: returning min -1,-1 max -1,-1 normal (433,331)-(591,418)
002f:trace:win:SWP_DoNCCalcSize hwnd 0x1007c old win (433,331)-(591,418) old client (437,354)-(587,414) new win (433,331)-(591,418) new client (437,354)-(587,414)
002f:trace:win:GetWindowRect hwnd 0x1007c (433,331)-(591,418)
002f:trace:win:invalidate_dce 0x1007c parent 0x10020 (433,331)-(591,418) ((433,331)-(591,418))
002f:trace:win:invalidate_dce 0x3c0041: hwnd 0x10020 dcx 00000013 Cache
002f:trace:win:invalidate_dce 0x1c0039: hwnd 0x10020 dcx 00000013 Cache InUse
002f:trace:win:set_window_pos win 0x1007c surface (nil) -> (nil)
002f:trace:win:USER_SetWindowPos status flags = 1827
002f:trace:win:show_window hwnd=0x1007c, cmd=1, wasVisible 0
002f:trace:win:SetWindowPos hwnd 0x1007c, after (nil), 0,0 (0x0), flags 00000043
002f:trace:win:dump_winpos_flags flags: SWP_NOSIZE SWP_NOMOVE SWP_SHOWWINDOW
002f:trace:win:SWP_DoWinPosChanging hwnd 0x1007c, after (nil), swp 0,0 0x0 flags 00001843
002f:trace:win:SWP_DoWinPosChanging current (433,331)-(591,418) style 86cf0000 new (433,331)-(591,418)
002f:trace:win:SWP_DoOwnedPopups (0x1007c) hInsertAfter = (nil)
002f:trace:win:GetWindowRect hwnd 0x1007c (433,331)-(591,418)
002f:trace:win:invalidate_dce 0x1007c parent 0x10020 (433,331)-(591,418) ((433,331)-(591,418))
002f:trace:win:invalidate_dce 0x3c0041: hwnd 0x10020 dcx 00000013 Cache
002f:trace:win:invalidate_dce 0x1c0039: hwnd 0x10020 dcx 00000013 Cache InUse
002f:trace:win:set_window_pos win 0x1007c surface (nil) -> 0x12e898
002f:trace:win:SetForegroundWindow 0x1007c
002f:trace:win:GetDCEx hwnd 0x1007c, hrgnClip 0x12004a, flags 00010041
002f:trace:win:GetDCEx (0x1007c,0x12004a,0x10053): returning 0x6004f (updated)
002f:trace:win:release_dc 0x1007c 0x6004f
002f:trace:win:SetFocus 0x1007c prev (nil)
002f:trace:win:GetDCEx hwnd 0x1007c, hrgnClip 0x14004a, flags 00010041
002f:trace:win:GetDCEx found valid 0x6004f hwnd 0x1007c, flags 00000013
002f:trace:win:GetDCEx (0x1007c,0x14004a,0x10053): returning 0x6004f (updated)
002f:trace:win:release_dc 0x1007c 0x6004f
002f:trace:win:GetDCEx hwnd 0x1007c, hrgnClip 0x70054, flags 00010080
002f:trace:win:GetDCEx (0x1007c,0x70054,0x10098): returning 0x15004a (updated)
002f:trace:win:release_dc 0x1007c 0x15004a
002f:trace:win:USER_SetWindowPos status flags = 1847
wine: Unhandled page fault on read access to 0x00000018 at address 0x7fa789c5 (thread 002f), starting debugger...
#############
dpkg --purge libwine-development:i386 libwine-development-dbgsym:i386 wine-development wine32-development wine32-development-dbgsym
dpkg -i libwine-development_3.12-2_i386.deb wine32-development_3.12-2_i386.deb wine-development_3.12-2_all.deb
export WINEPREFIX=/home/benutzer/wineprefix-3.12-2
wine wineboot
cd $WINEPREFIX/drive_c/
cp -a /home/benutzer/test .
cd test
wine notepad &
WINEDEBUG=+win wine digitalclock.exe 2>&1 | tee -a ~/trace_$(date +%Y-%m-%d_%H-%M-%S).log
002e:trace:win:WIN_CreateWindowEx L"digitalclock" L"Qt5QWindowIcon" ex=00000000 style=86cf0000 433,331 158x87 parent=(nil) menu=(nil) inst=0x400000 params=(nil)
002e:trace:win:dump_window_styles style: WS_POPUP WS_CLIPSIBLINGS WS_CLIPCHILDREN WS_CAPTION WS_SYSMENU WS_THICKFRAME WS_MINIMIZEBOX WS_MAXIMIZEBOX
002e:trace:win:dump_window_styles exstyle:
002e:trace:win:GetWindowRect hwnd 0x1007c (0,0)-(0,0)
002e:trace:win:MonitorFromWindow (0x1007c, 0x00000001)
002e:trace:win:GetWindowRect hwnd 0x1007c (0,0)-(0,0)
002e:trace:win:GetMonitorInfoW flags 0001, monitor (0,0)-(1024,768), work (0,0)-(1024,768)
002e:trace:win:MonitorFromRect (0,0)-(0,0) flags 1 returning 0x1
002e:trace:win:GetMonitorInfoW flags 0001, monitor (0,0)-(1024,768), work (0,0)-(1024,768)
002e:trace:win:WINPOS_GetMinMaxInfo 1032 776 / -4 -4 / 1036 780 / 112 27
002e:trace:win:GetWindowRect hwnd 0x1007c (433,331)-(591,418)
002e:trace:win:invalidate_dce 0x1007c parent 0x10020 (433,331)-(591,418) ((0,0)-(0,0))
002e:trace:win:invalidate_dce 0x3c0041: hwnd 0x10020 dcx 00000013 Cache
002e:trace:win:invalidate_dce 0x1c0039: hwnd 0x10020 dcx 00000013 Cache InUse
002e:trace:win:set_window_pos win 0x1007c surface (nil) -> (nil)
002e:trace:win:WIN_CreateWindowEx hwnd 0x1007c cs 433,331 158x87
002e:trace:win:WIN_CreateWindowEx register IME window for 0x1007c
002e:trace:win:GetWindowRect hwnd 0x1007c (433,331)-(591,418)
002e:trace:win:invalidate_dce 0x1007c parent 0x10020 (433,331)-(591,418) ((433,331)-(591,418))
002e:trace:win:invalidate_dce 0x3c0041: hwnd 0x10020 dcx 00000013 Cache
002e:trace:win:invalidate_dce 0x1c0039: hwnd 0x10020 dcx 00000013 Cache InUse
002e:trace:win:set_window_pos win 0x1007c surface (nil) -> (nil)
002e:trace:win:WIN_CreateWindowEx created window 0x1007c
002e:trace:win:SetWindowPos hwnd 0x1007c, after (nil), 0,0 (0x0), flags 00001837
002e:trace:win:dump_winpos_flags flags: SWP_NOSIZE SWP_NOMOVE SWP_NOZORDER SWP_NOACTIVATE SWP_FRAMECHANGED SWP_NOCLIENTSIZE SWP_NOCLIENTMOVE
002e:trace:win:SWP_DoWinPosChanging hwnd 0x1007c, after (nil), swp 0,0 0x0 flags 00001837
002e:trace:win:SWP_DoWinPosChanging current (433,331)-(591,418) style 86cf0000 new (433,331)-(591,418)
002e:trace:win:GetWindowPlacement 0x1007c: returning min -1,-1 max -1,-1 normal (433,331)-(591,418)
002e:trace:win:SWP_DoNCCalcSize hwnd 0x1007c old win (433,331)-(591,418) old client (437,354)-(587,414) new win (433,331)-(591,418) new client (437,354)-(587,414)
002e:trace:win:GetWindowRect hwnd 0x1007c (433,331)-(591,418)
002e:trace:win:invalidate_dce 0x1007c parent 0x10020 (433,331)-(591,418) ((433,331)-(591,418))
002e:trace:win:invalidate_dce 0x3c0041: hwnd 0x10020 dcx 00000013 Cache
002e:trace:win:invalidate_dce 0x1c0039: hwnd 0x10020 dcx 00000013 Cache InUse
002e:trace:win:set_window_pos win 0x1007c surface (nil) -> (nil)
002e:trace:win:USER_SetWindowPos status flags = 1827
002e:trace:win:show_window hwnd=0x1007c, cmd=1, wasVisible 0
002e:trace:win:SetWindowPos hwnd 0x1007c, after (nil), 0,0 (0x0), flags 00000043
002e:trace:win:dump_winpos_flags flags: SWP_NOSIZE SWP_NOMOVE SWP_SHOWWINDOW
002e:trace:win:SWP_DoWinPosChanging hwnd 0x1007c, after (nil), swp 0,0 0x0 flags 00001843
002e:trace:win:SWP_DoWinPosChanging current (433,331)-(591,418) style 86cf0000 new (433,331)-(591,418)
002e:trace:win:SWP_DoOwnedPopups (0x1007c) hInsertAfter = (nil)
002e:trace:win:GetWindowRect hwnd 0x1007c (433,331)-(591,418)
002e:trace:win:invalidate_dce 0x1007c parent 0x10020 (433,331)-(591,418) ((433,331)-(591,418))
002e:trace:win:invalidate_dce 0x3c0041: hwnd 0x10020 dcx 00000013 Cache
002e:trace:win:invalidate_dce 0x1c0039: hwnd 0x10020 dcx 00000013 Cache InUse
002e:trace:win:set_window_pos win 0x1007c surface (nil) -> 0x12e898
002e:trace:win:SetForegroundWindow 0x1007c
002e:trace:win:GetDCEx hwnd 0x1007c, hrgnClip 0x12004a, flags 00010041
002e:trace:win:GetDCEx (0x1007c,0x12004a,0x10053): returning 0x6004f (updated)
002e:trace:win:release_dc 0x1007c 0x6004f
002e:trace:win:SetFocus 0x1007c prev (nil)
002e:trace:win:GetWindowRect hwnd 0x1007c (433,331)-(591,418)
002e:trace:win:GetDCEx hwnd 0x1007c, hrgnClip 0x14004a, flags 00010041
002e:trace:win:GetDCEx found valid 0x6004f hwnd 0x1007c, flags 00000013
002e:trace:win:GetDCEx (0x1007c,0x14004a,0x10053): returning 0x6004f (updated)
002e:trace:win:release_dc 0x1007c 0x6004f
002e:trace:win:GetDCEx hwnd 0x1007c, hrgnClip 0x70054, flags 00010080
002e:trace:win:GetDCEx (0x1007c,0x70054,0x10098): returning 0x15004a (updated)
002e:trace:win:release_dc 0x1007c 0x15004a
002e:trace:win:USER_SetWindowPos status flags = 1847
002e:trace:win:alloc_winproc allocated 0xffff0015 for W 0x7edf0430 (22/4096 used)
002e:trace:win:GetDCEx hwnd 0x1007c, hrgnClip (nil), flags 00010000
002e:trace:win:GetDCEx found valid 0x15004a hwnd 0x1007c, flags 0000001a
002e:trace:win:GetDCEx (0x1007c,(nil),0x10018): returning 0x15004a (updated)
002e:trace:win:release_dc 0x1007c 0x15004a
002e:trace:win:GetDCEx hwnd 0x1007c, hrgnClip 0xb0054, flags 00010080
002e:trace:win:GetDCEx found valid 0x15004a hwnd 0x1007c, flags 0000001a
002e:trace:win:GetDCEx (0x1007c,0xb0054,0x10098): returning 0x15004a (updated)
002e:trace:win:BeginPaint hdc = 0x15004a box = ((0,0)-(150,60)), fErase = 1
002e:fixme:dwmapi:DwmIsCompositionEnabled 0x60dad0
002e:trace:win:GetDCEx hwnd 0x10020, hrgnClip (nil), flags 00000003
002e:trace:win:GetDCEx found valid 0x3c0041 hwnd 0x10020, flags 00000013
002e:trace:win:GetDCEx (0x10020,(nil),0x13): returning 0x3c0041 (updated)
002e:trace:win:release_dc (nil) 0x3c0041
002e:trace:win:GetDCEx hwnd 0x10020, hrgnClip (nil), flags 00000003
002e:trace:win:GetDCEx found valid 0x3c0041 hwnd 0x10020, flags 00000013
002e:trace:win:GetDCEx (0x10020,(nil),0x13): returning 0x3c0041 (updated)
002e:trace:win:release_dc (nil) 0x3c0041
002e:trace:win:GetDCEx hwnd 0x1007c, hrgnClip (nil), flags 00010000
002e:trace:win:GetDCEx (0x1007c,(nil),0x10018): returning 0x1005b (updated)
002e:trace:win:release_dc 0x1007c 0x1005b
002e:trace:win:release_dc 0x1007c 0x15004a
002e:trace:win:GetWindowRect hwnd 0x1007c (433,331)-(591,418)
002e:trace:win:SetForegroundWindow 0x1007c
002e:trace:win:GetDCEx hwnd 0x1007c, hrgnClip (nil), flags 00010000
002e:trace:win:GetDCEx found valid 0x1005b hwnd 0x1007c, flags 0000001a
002e:trace:win:GetDCEx (0x1007c,(nil),0x10018): returning 0x1005b
002e:trace:win:release_dc 0x1007c 0x1005b
002e:trace:win:GetDCEx hwnd 0x1007c, hrgnClip (nil), flags 00010000
002e:trace:win:GetDCEx found valid 0x1005b hwnd 0x1007c, flags 0000001a
002e:trace:win:GetDCEx (0x1007c,(nil),0x10018): returning 0x1005b
002e:trace:win:release_dc 0x1007c 0x1005b
002e:trace:win:GetDCEx hwnd 0x1007c, hrgnClip (nil), flags 00010000
002e:trace:win:GetDCEx found valid 0x1005b hwnd 0x1007c, flags 0000001a
002e:trace:win:GetDCEx (0x1007c,(nil),0x10018): returning 0x1005b
002e:trace:win:release_dc 0x1007c 0x1005b
002e:trace:win:GetDCEx hwnd 0x1007c, hrgnClip (nil), flags 00010000
002e:trace:win:GetDCEx found valid 0x1005b hwnd 0x1007c, flags 0000001a
002e:trace:win:GetDCEx (0x1007c,(nil),0x10018): returning 0x1005b
002e:trace:win:release_dc 0x1007c 0x1005b
002e:trace:win:GetDCEx hwnd 0x1007c, hrgnClip (nil), flags 00010000
002e:trace:win:GetDCEx found valid 0x1005b hwnd 0x1007c, flags 0000001a
002e:trace:win:GetDCEx (0x1007c,(nil),0x10018): returning 0x1005b
002e:trace:win:release_dc 0x1007c 0x1005b
002e:trace:win:GetDCEx hwnd 0x1007c, hrgnClip (nil), flags 00010000
002e:trace:win:GetDCEx found valid 0x1005b hwnd 0x1007c, flags 0000001a
002e:trace:win:GetDCEx (0x1007c,(nil),0x10018): returning 0x1005b
002e:trace:win:release_dc 0x1007c 0x1005b
002e:trace:win:GetWindowRect hwnd 0x1007c (433,331)-(591,418)
002e:trace:win:SetForegroundWindow 0x1007c
002e:trace:win:show_window hwnd=0x1007c, cmd=0, wasVisible 1
002e:trace:win:SetWindowPos hwnd 0x1007c, after (nil), 0,0 (0x0), flags 00000083
002e:trace:win:dump_winpos_flags flags: SWP_NOSIZE SWP_NOMOVE SWP_HIDEWINDOW
002e:trace:win:SWP_DoWinPosChanging hwnd 0x1007c, after (nil), swp 0,0 0x0 flags 00001883
002e:trace:win:SWP_DoWinPosChanging current (433,331)-(591,418) style 96cf0000 new (433,331)-(591,418)
002e:trace:win:SWP_DoOwnedPopups (0x1007c) hInsertAfter = (nil)
002e:trace:win:GetWindowRect hwnd 0x1007c (433,331)-(591,418)
002e:trace:win:invalidate_dce 0x1007c parent 0x10020 (433,331)-(591,418) ((433,331)-(591,418))
002e:trace:win:invalidate_dce 0x1005b: hwnd 0x1007c dcx 0000001a Cache
002e:trace:win:make_dc_dirty purged 0x1005b hwnd 0x1007c
002e:trace:win:invalidate_dce 0x15004a: hwnd 0x1007c dcx 0000001a Cache
002e:trace:win:make_dc_dirty purged 0x15004a hwnd 0x1007c
002e:trace:win:invalidate_dce 0x6004f: hwnd 0x1007c dcx 00000013 Cache
002e:trace:win:make_dc_dirty purged 0x6004f hwnd 0x1007c
002e:trace:win:invalidate_dce 0x3c0041: hwnd 0x10020 dcx 00000013 Cache
002e:trace:win:invalidate_dce 0x1c0039: hwnd 0x10020 dcx 00000013 Cache InUse
002e:trace:win:set_window_pos win 0x1007c surface 0x12e898 -> 0x7fbae2a0
002e:trace:win:USER_SetWindowPos status flags = 1887
002e:trace:win:WINPOS_ShowIconTitle 0x1007c 0
002e:trace:win:WINPOS_ActivateOtherWindow win = 0x1004c fg = 0x1007c
002e:trace:win:SetForegroundWindow 0x1004c
002e:trace:win:DestroyWindow (0x1007c)
002e:trace:win:WIN_DestroyWindow 0x1007c
002e:trace:win:WIN_DestroyWindow unregister IME window for 0x1007c
002e:trace:win:DestroyWindow (0x10072)
002e:trace:win:WIN_DestroyWindow 0x10072
002e:trace:win:DestroyWindow (0x10074)
002e:trace:win:WIN_DestroyWindow 0x10074
002e:trace:win:DestroyWindow (0x10070)
002e:trace:win:WIN_DestroyWindow 0x10070
002e:trace:win:DestroyWindow (0x10066)
002e:trace:win:WIN_DestroyWindow 0x10066
############
export OLDPATH=$PATH
apt build-dep wine-development
git describe --always --tag
# wine-3.13
./configure --with-gnutls --without-hal --without-netapi --disable-tests
make -j8
export WINEPREFIX=/home/benutzer/wine-git-prefix-3.13
export PATH=/home/benutzer/wine-git-3.13:$OLDPATH
wine --version
# wine-3.13
wine wineboot
cd $WINEPREFIX/drive_c/
cp -a /home/benutzer/test .
cd test
wine notepad &
WINEDEBUG=+win wine digitalclock.exe 2>&1 | tee -a ~/trace_$(date +%Y-%m-%d_%H-%M-%S).log
no crash ...
############
dpkg-buildpackage -b
dpkg -i libwine-development_3.13-3_i386.deb wine32-development_3.13-3_i386.deb wine-development_3.13-3_all.deb
export PATH=$OLDPATH
wine --version
# wine-3.13 (Debian 3.13-3)
export WINEPREFIX=/home/benutzer/wineprefix-3.13-selfbuilt
wine wineboot
is crashing...
############
dpkg --purge libwine-development:i386 libwine-development-dbgsym:i386 wine-development wine32-development wine32-development-dbgsym
export WINEPREFIX=/home/benutzer/wineprefix-3.13-selfbuilt
export PATH=/home/benutzer/wine/try1/wine-development-3.13:$OLDPATH
make
Unhandled exception: page fault on read access to 0x00000018 in 32-bit code (0x7ea98b25).
Register dump:
CS:0073 SS:007b DS:007b ES:007b FS:0033 GS:003b
EIP:7ea98b25 ESP:0060d9c0 EBP:0060dac8 EFLAGS:00010246( R- -- I Z- -P- )
EAX:00000000 EBX:7eadcf40 ECX:00000001 EDX:0002007e
ESI:00000000 EDI:00000c00
Stack dump:
0x0060d9c0: 00000005 0060dc14 00000040 b7df9237
0x0060d9d0: 00000000 00000000 00000000 7ffd8000
0x0060d9e0: 7bce5cbc 0060dc14 7bc824ff 7bce5cbc
0x0060d9f0: 0060dc14 0060da7c 0060da58 7bc83853
0x0060da00: 00000000 694c0000 0078756e 00000000
0x0060da10: 00000000 00000000 00000000 00000000
Backtrace:
=>0 0x7ea98b25 USER_SetWindowPos+0x25() [./dlls/user32/winpos.c:2220] in user32 (0x0060dac8)
1 0x7ea5cd8f handle_internal_message+0x1ee(hwnd=0x2007e, msg=<is not available>, wparam=0xc00) [./dlls/user32/message.c:1864] in user32 (0x0060db18)
2 0x7ea619e0 peek_message+0x198f(msg=<is not available>, hwnd=(nil), first=<is not available>, last=<is not available>, flags=0x1, changed_mask=<is not available>) [./dlls/user32/message.c:2923] in user32 (0x0060de38)
3 0x7ea66dcf PeekMessageW+0x79(msg_out=<couldn't compute location>, hwnd=<couldn't compute location>, first=<couldn't compute location>, last=<couldn't compute location>, flags=<couldn't compute location>) [./dlls/user32/message.c:3771] in user32 (0x0060dea8)
4 0x66b887bf in qt5core (+0x2487be) (0x0060fbb8)
5 0x025a9347 in qwindows (+0x79346) (0x0060fbf8)
6 0x66b27980 in qt5core (+0x1e797f) (0x0060fca8)
7 0x66b31bd9 in qt5core (+0x1f1bd8) (0x0060fd28)
8 0x0040189b in digitalclock (+0x189a) (0x0011c330)
9 0x0011c330 (0x0011c330)
10 0x0011c330 (0x0011c330)
...
200 0x0011c330 (0x0011c330)
0x7ea98b25 USER_SetWindowPos+0x25 [./dlls/user32/winpos.c:2220] in user32: movl 0x18(%esi),%eax
Unable to access file './dlls/user32/winpos.c'
Modules:
Module Address Debug info Name (94 modules)
PE 400000- 40b000 Export digitalclock
PE 610000- 1ea6000 Deferred icudt57
PE 1eb0000- 241d000 Deferred qt5gui
PE 2530000- 26c9000 Export qwindows
PE 63080000-630a3000 Deferred zlib1
PE 66400000-66925000 Deferred qt5widgets
PE 66940000-66e2a000 Export qt5core
PE 67c80000-67d0d000 Deferred libpcre2-16-0
PE 6d0c0000-6d1e8000 Deferred libgcc_s_sjlj-1
PE 6de40000-6e0c2000 Deferred icuin57
PE 6fe40000-70b17000 Deferred libstdc++-6
PE 70ec0000-70ef3000 Deferred qwindowsvistastyle
PE 71480000-7161d000 Deferred icuuc57
ELF 7b400000-7b7ef000 Deferred kernel32<elf>
\-PE 7b420000-7b7ef000 \ kernel32
ELF 7bc00000-7bd03000 Deferred ntdll<elf>
\-PE 7bc10000-7bd03000 \ ntdll
ELF 7c000000-7c005000 Deferred <wine-loader>
ELF 7dafc000-7db1a000 Deferred wintab32<elf>
\-PE 7db00000-7db1a000 \ wintab32
ELF 7db60000-7db67000 Deferred libxfixes.so.3
ELF 7db67000-7db73000 Deferred libxcursor.so.1
ELF 7db73000-7db86000 Deferred libxi.so.6
ELF 7db86000-7db8a000 Deferred libxcomposite.so.1
ELF 7db8a000-7db97000 Deferred libxrandr.so.2
ELF 7db97000-7dba3000 Deferred libxrender.so.1
ELF 7dba3000-7dbaa000 Deferred libxxf86vm.so.1
ELF 7dbaa000-7dbae000 Deferred libxinerama.so.1
ELF 7dbae000-7dbb8000 Deferred librt.so.1
ELF 7dbb8000-7dbd6000 Deferred libbsd.so.0
ELF 7dbd6000-7dbdd000 Deferred libxdmcp.so.6
ELF 7dbdd000-7dc0b000 Deferred libxcb.so.1
ELF 7dc0b000-7dd58000 Deferred libx11.so.6
ELF 7dd58000-7dd6d000 Deferred libxext.so.6
ELF 7dd6d000-7de00000 Deferred winex11<elf>
\-PE 7dd80000-7de00000 \ winex11
ELF 7de00000-7df32000 Deferred oleaut32<elf>
\-PE 7de20000-7df32000 \ oleaut32
ELF 7df32000-7df57000 Deferred imm32<elf>
\-PE 7df40000-7df57000 \ imm32
ELF 7df57000-7df61000 Deferred libuuid.so.1
ELF 7df61000-7df93000 Deferred libexpat.so.1
ELF 7df93000-7dfdd000 Deferred libfontconfig.so.1
ELF 7dfdd000-7dffc000 Deferred libz.so.1
ELF 7dffc000-7e038000 Deferred libpng16.so.16
ELF 7e038000-7e0f6000 Deferred libfreetype.so.6
ELF 7e0f6000-7e11e000 Deferred libtinfo.so.6
ELF 7e11e000-7e14b000 Deferred libncurses.so.6
ELF 7e14b000-7e186000 Deferred uxtheme<elf>
\-PE 7e150000-7e186000 \ uxtheme
ELF 7e186000-7e19e000 Deferred dwmapi<elf>
\-PE 7e190000-7e19e000 \ dwmapi
ELF 7e19e000-7e1c9000 Deferred msacm32<elf>
\-PE 7e1a0000-7e1c9000 \ msacm32
ELF 7e1c9000-7e284000 Deferred winmm<elf>
\-PE 7e1d0000-7e284000 \ winmm
ELF 7e284000-7e29d000 Deferred userenv<elf>
\-PE 7e290000-7e29d000 \ userenv
ELF 7e29d000-7e316000 Deferred shlwapi<elf>
\-PE 7e2b0000-7e316000 \ shlwapi
ELF 7e316000-7e5d3000 Deferred shell32<elf>
\-PE 7e330000-7e5d3000 \ shell32
ELF 7e5d3000-7e730000 Deferred ole32<elf>
\-PE 7e5f0000-7e730000 \ ole32
ELF 7e730000-7e76c000 Deferred ws2_32<elf>
\-PE 7e740000-7e76c000 \ ws2_32
ELF 7e76c000-7e785000 Deferred libresolv.so.2
ELF 7e795000-7e7c1000 Deferred iphlpapi<elf>
\-PE 7e7a0000-7e7c1000 \ iphlpapi
ELF 7e7c1000-7e845000 Deferred rpcrt4<elf>
\-PE 7e7d0000-7e845000 \ rpcrt4
ELF 7e845000-7e875000 Deferred netapi32<elf>
\-PE 7e850000-7e875000 \ netapi32
ELF 7e875000-7e89e000 Deferred mpr<elf>
\-PE 7e880000-7e89e000 \ mpr
ELF 7e89e000-7e8b9000 Deferred version<elf>
\-PE 7e8a0000-7e8b9000 \ version
ELF 7e8b9000-7e9e9000 Deferred gdi32<elf>
\-PE 7e8d0000-7e9e9000 \ gdi32
ELF 7e9e9000-7ebf2000 Dwarf user32<elf>
\-PE 7ea00000-7ebf2000 \ user32
ELF 7ebf2000-7ecac000 Deferred msvcrt<elf>
\-PE 7ec10000-7ecac000 \ msvcrt
ELF 7ecac000-7ed28000 Deferred advapi32<elf>
\-PE 7ecc0000-7ed28000 \ advapi32
ELF 7eee9000-7eefd000 Deferred libnss_files.so.2
ELF 7eefd000-7f000000 Deferred libm.so.6
ELF b7c01000-b7c06000 Deferred libxau.so.6
ELF b7c08000-b7c0e000 Deferred libdl.so.2
ELF b7c0e000-b7de8000 Deferred libc.so.6
ELF b7de8000-b7e08000 Deferred libpthread.so.0
ELF b7e18000-b7fcf000 Dwarf libwine.so.1
ELF b7fd1000-b7ffa000 Deferred ld-linux.so.2
ELF b7ffd000-b7ffe000 Deferred [vdso].so
Threads:
process tid prio (all id:s are in hex)
00000008 notepad.exe
00000009 0
0000000e services.exe
00000025 0
0000001f 0
00000015 0
00000010 0
0000000f 0
00000011 winedevice.exe
0000001c 0
00000019 0
00000018 0
00000012 0
00000013 explorer.exe
0000002b 0
0000002a 0
00000024 0
00000014 0
0000001d plugplay.exe
00000021 0
00000020 0
0000001e 0
00000022 winedevice.exe
0000002c 0
00000027 0
00000026 0
00000023 0
0000003a (D) C:\test\digitalclock.exe
0000003c 0
0000003b 0 <==
System information:
Wine build: wine-3.13 ()
Platform: i386
Version: Windows 7
Host system: Linux
Host version: 4.17.0-1-686-pae
.
WINEDEBUG=+win wine winedbg digitalclock.exe
dir /home/benutzer/wine/try1/wine-development-3.13
cont
Unhandled exception: page fault on read access to 0x00000018 in 32-bit code (0x7ea98b25).
Register dump:
CS:0073 SS:007b DS:007b ES:007b FS:0033 GS:003b
EIP:7ea98b25 ESP:0060d9c0 EBP:0060dac8 EFLAGS:00010246( R- -- I Z- -P- )
EAX:00000000 EBX:7eadcf40 ECX:00000002 EDX:0003008a
ESI:00000000 EDI:00000c00
Stack dump:
0x0060d9c0: 00000004 0060dc14 00000040 b7d06237
0x0060d9d0: 00000000 00000000 00000000 7ffd8000
0x0060d9e0: 7bce5cbc 0060dc14 7bc824ff 7bce5cbc
0x0060d9f0: 0060dc14 0060da7c 0060da58 7bc83853
0x0060da00: 00000000 694c0000 0078756e 00000000
0x0060da10: 00000000 00000000 00000000 00000000
Backtrace:
=>0 0x7ea98b25 USER_SetWindowPos+0x25() [./dlls/user32/winpos.c:2220] in user32 (0x0060dac8)
1 0x7ea5cd8f handle_internal_message+0x1ee(hwnd=0x3008a, msg=<is not available>, wparam=0xc00) [./dlls/user32/message.c:1864] in user32 (0x0060db18)
2 0x7ea619e0 peek_message+0x198f(msg=<is not available>, hwnd=(nil), first=<is not available>, last=<is not available>, flags=0x1, changed_mask=<is not available>) [./dlls/user32/message.c:2923] in user32 (0x0060de38)
3 0x7ea66dcf PeekMessageW+0x79(msg_out=<couldn't compute location>, hwnd=<couldn't compute location>, first=<couldn't compute location>, last=<couldn't compute location>, flags=<couldn't compute location>) [./dlls/user32/message.c:3771] in user32 (0x0060dea8)
4 0x66b887bf in qt5core (+0x2487be) (0x0060fbb8)
5 0x025a9347 in qwindows (+0x79346) (0x0060fbf8)
6 0x66b27980 in qt5core (+0x1e797f) (0x0060fca8)
7 0x66b31bd9 in qt5core (+0x1f1bd8) (0x0060fd28)
8 0x0040189b in digitalclock (+0x189a) (0x0011aa88)
9 0x0011aa88 (0x0011aa88)
...
0x7ea98b25 USER_SetWindowPos+0x25 [./dlls/user32/winpos.c:2220] in user32: movl 0x18(%esi),%eax
2220 orig_flags = winpos->flags;
Wine-dbg>print *winpos
Many symbols with name 'winpos', choose the one you want (<cr> to abort):
[1]: 0x7e9e9000 frame in user32<elf>
[2]: 0x7e9e9000 frame in user32<elf>
=> 1
{hwnd=*** Invalid address 0x464c457f ***
, hwndInsertAfter=*** Invalid address 0x464c4583 ***
, x=*** Invalid address 0x464c4587 ***
, y=*** Invalid address 0x464c458b ***
, cx=*** Invalid address 0x464c458f ***
, cy=*** Invalid address 0x464c4593 ***
, flags=*** Invalid address 0x464c4597 ***
}
Wine-dbg>up
1864 return USER_SetWindowPos( (WINDOWPOS *)lparam, 0, 0 );
Wine-dbg>print lparam
Too many addresses for symbol 'lparam', limiting the first 100
Many symbols with name 'lparam', choose the one you want (<cr> to abort):
...
[24]: 0x7e9e9000 frame in user32<elf>
...
=> 24
0x464c457f
#########
WINEDEBUG=+win,+msg wine winedbg digitalclock.exe
dir /home/benutzer/wine/try1/wine-development-3.13
cont
b PostMessageW
WINEDEBUG=+win,+msg wine winedbg digitalclock.exe
WineDbg starting on pid 0034
0035:trace:win:User32InitializeImmEntryTable (19650412)
0035:trace:msg:RegisterWindowMessageA MSIMEService, ret=c001
0035:trace:msg:RegisterWindowMessageA MSIMEReconvertOptions, ret=c002
0035:trace:msg:RegisterWindowMessageA MSIMEMouseOperation, ret=c003
0035:trace:msg:RegisterWindowMessageA MSIMEReconvertRequest, ret=c004
0035:trace:msg:RegisterWindowMessageA MSIMEReconvert, ret=c005
0035:trace:msg:RegisterWindowMessageA MSIMEQueryPosition, ret=c006
0035:trace:msg:RegisterWindowMessageA MSIMEDocumentFeed, ret=c007
start_process () at ./dlls/kernel32/process.c:1101
0x7b465771 start_process+0x141 [./dlls/kernel32/process.c:1101] in kernel32: movl 0xffffff24(%ebp),%esi
Unable to access file './dlls/kernel32/process.c'
Wine-dbg>dir /home/benutzer/wine/try1/wine-development-3.13
Wine-dbg>b PostMessageW
0033:fixme:dbghelp_dwarf:dwarf2_parse_const_type Unsupported children
0033:fixme:dbghelp_dwarf:dwarf2_parse_const_type Unsupported children
Breakpoint 1 at 0x7ea65d90 PostMessageW [./dlls/user32/message.c:3646] in user32
Wine-dbg>cont
0035:fixme:file:FindFirstFileExW flags not implemented 0x00000002
0035:trace:win:alloc_winproc allocated 0xffff000e for W 0x7e6087e0 (15/4096 used)
0035:trace:win:WIN_CreateWindowEx (null) L"OleMainThreadWndClass" ex=00000000 style=00000000 0,0 0x0 parent=0xfffffffd menu=(nil) inst=0x7e5f0000 params=(nil)
0035:trace:win:dump_window_styles style:
0035:trace:win:dump_window_styles exstyle:
0035:trace:win:GetWindowRect hwnd 0x2007a (0,0)-(0,0)
0035:trace:win:GetWindowRect hwnd 0x2007a (0,0)-(0,0)
0035:trace:win:WINPOS_GetMinMaxInfo 106 106 / -3 -3 / 1036 780 / 112 27
0035:trace:win:GetWindowRect hwnd 0x2007a (0,0)-(112,27)
0035:trace:win:invalidate_dce 0x2007a parent 0x10026 (0,0)-(112,27) ((0,0)-(0,0))
0035:trace:win:set_window_pos win 0x2007a surface (nil) -> (nil)
0035:trace:win:WIN_CreateWindowEx hwnd 0x2007a cs 0,0 112x27
0035:trace:win:GetWindowRect hwnd 0x2007a (0,0)-(112,27)
0035:trace:win:invalidate_dce 0x2007a parent 0x10026 (0,0)-(112,27) ((0,0)-(112,27))
0035:trace:win:set_window_pos win 0x2007a surface (nil) -> (nil)
0035:trace:win:WIN_CreateWindowEx created window 0x2007a
0035:trace:win:alloc_winproc allocated 0xffff000f for W 0x7e634540 (16/4096 used)
0035:trace:win:GetDCEx hwnd 0x10020, hrgnClip (nil), flags 00000003
0035:trace:win:GetDCEx (0x10020,(nil),0x13): returning 0x1c0039 (updated)
0035:trace:win:alloc_winproc allocated 0xffff0010 for W 0x7db6c2f0 (17/4096 used)
0035:trace:win:WIN_CreateWindowEx L"Tablet" L"WineTabletClass" ex=00000000 style=80880000 0,0 0x0 parent=(nil) menu=(nil) inst=0x7db60000 params=(nil)
0035:trace:win:dump_window_styles style: WS_POPUP WS_BORDER WS_SYSMENU
0035:trace:win:dump_window_styles exstyle:
0035:trace:win:GetWindowRect hwnd 0x20078 (0,0)-(0,0)
0035:trace:win:invalidate_dce 0x20078 parent 0x10020 (0,0)-(0,0) ((0,0)-(0,0))
0035:trace:win:invalidate_dce 0x1c0039: hwnd 0x10020 dcx 00000013 Cache InUse
0035:trace:win:set_window_pos win 0x20078 surface (nil) -> 0x7ebc92a0
0035:trace:win:WIN_CreateWindowEx hwnd 0x20078 cs 0,0 0x0
0035:trace:win:WIN_CreateWindowEx L"Default IME" L"IME" ex=00000000 style=8c000000 0,0 1x1 parent=(nil) menu=(nil) inst=(nil) params=(nil)
0035:trace:win:dump_window_styles style: WS_POPUP WS_DISABLED WS_CLIPSIBLINGS
0035:trace:win:dump_window_styles exstyle:
0035:trace:win:GetWindowRect hwnd 0x20064 (0,0)-(0,0)
0035:trace:win:GetWindowRect hwnd 0x20064 (0,0)-(0,0)
0035:trace:win:GetWindowRect hwnd 0x20064 (0,0)-(1,1)
0035:trace:win:invalidate_dce 0x20064 parent 0x10020 (0,0)-(1,1) ((0,0)-(0,0))
0035:trace:win:invalidate_dce 0x1c0039: hwnd 0x10020 dcx 00000013 Cache InUse
0035:trace:win:set_window_pos win 0x20064 surface (nil) -> (nil)
0035:trace:win:WIN_CreateWindowEx hwnd 0x20064 cs 0,0 1x1
0035:trace:win:GetWindowRect hwnd 0x20064 (0,0)-(1,1)
0035:trace:win:GetWindowRect hwnd 0x20064 (0,0)-(1,1)
0035:trace:win:invalidate_dce 0x20064 parent 0x10020 (0,0)-(1,1) ((0,0)-(1,1))
0035:trace:win:invalidate_dce 0x1c0039: hwnd 0x10020 dcx 00000013 Cache InUse
0035:trace:win:set_window_pos win 0x20064 surface (nil) -> (nil)
Stopped on breakpoint 1 at 0x7ea65d90 PostMessageW [./dlls/user32/message.c:3646] in user32
PostMessageW () at ./dlls/user32/message.c:3646
3646 {
Wine-dbg>cont
0035:trace:msg:PostMessageW hwnd 0x10020 msg 210 (WM_PARENTNOTIFY) wp 1 lp 20064
0035:trace:win:WIN_CreateWindowEx created window 0x20064
0035:trace:win:WIN_CreateWindowEx register IME window for 0x20078
0035:trace:win:GetWindowRect hwnd 0x20078 (0,0)-(0,0)
0035:trace:win:invalidate_dce 0x20078 parent 0x10020 (0,0)-(0,0) ((0,0)-(0,0))
0035:trace:win:invalidate_dce 0x1c0039: hwnd 0x10020 dcx 00000013 Cache InUse
0035:trace:win:set_window_pos win 0x20078 surface 0x7ebc92a0 -> 0x7ebc92a0
Stopped on breakpoint 1 at 0x7ea65d90 PostMessageW [./dlls/user32/message.c:3646] in user32
3646 {
Wine-dbg>cont
0035:trace:msg:PostMessageW hwnd 0x10020 msg 210 (WM_PARENTNOTIFY) wp 1 lp 20078
0035:trace:win:WIN_CreateWindowEx created window 0x20078
0035:trace:win:alloc_winproc allocated 0xffff0011 for W 0x2599870 (18/4096 used)
0035:trace:win:WIN_CreateWindowEx L"TabletDummyWindow" L"TabletDummyWindow" ex=00000000 style=00000000 -2147483648,-2147483648 -2147483648x-2147483648 parent=0xfffffffd menu=(nil) inst=0x400000 params=(nil)
0035:trace:win:dump_window_styles style:
0035:trace:win:dump_window_styles exstyle:
0035:trace:win:GetWindowRect hwnd 0x10026 (0,0)-(100,100)
0035:trace:win:GetWindowRect hwnd 0x20062 (0,0)-(0,0)
0035:trace:win:GetWindowRect hwnd 0x20062 (0,0)-(0,0)
0035:trace:win:WINPOS_GetMinMaxInfo 106 106 / -3 -3 / 1036 780 / 112 27
0035:trace:win:GetWindowRect hwnd 0x20062 (0,0)-(768,576)
0035:trace:win:invalidate_dce 0x20062 parent 0x10026 (0,0)-(768,576) ((0,0)-(0,0))
0035:trace:win:invalidate_dce 0x1c0039: hwnd 0x10020 dcx 00000013 Cache InUse
0035:trace:win:set_window_pos win 0x20062 surface (nil) -> (nil)
0035:trace:win:WIN_CreateWindowEx hwnd 0x20062 cs 0,0 768x576
0035:trace:win:GetWindowRect hwnd 0x20062 (0,0)-(768,576)
0035:trace:win:invalidate_dce 0x20062 parent 0x10026 (0,0)-(768,576) ((0,0)-(768,576))
0035:trace:win:invalidate_dce 0x1c0039: hwnd 0x10020 dcx 00000013 Cache InUse
0035:trace:win:set_window_pos win 0x20062 surface (nil) -> (nil)
0035:trace:win:WIN_CreateWindowEx created window 0x20062
Stopped on breakpoint 1 at 0x7ea65d90 PostMessageW [./dlls/user32/message.c:3646] in user32
3646 {
Wine-dbg>next
3646 {
Wine-dbg>
426 if (message >= 8*sizeof(message_pointer_flags)) return FALSE;
Wine-dbg>next
3655 TRACE( "hwnd %p msg %x (%s) wp %lx lp %lx\n",
Wine-dbg>
3655 TRACE( "hwnd %p msg %x (%s) wp %lx lp %lx\n",
Wine-dbg>
3655 TRACE( "hwnd %p msg %x (%s) wp %lx lp %lx\n",
Wine-dbg>
0033:fixme:winedbg:be_i386_is_jump unknown ff
0035:trace:msg:PostMessageW hwnd 0x20062 msg 80000001 (WM_WINE_SETWINDOWPOS) wp c00 lp 0
3661 info.wparam = wparam;
Wine-dbg>bt
Backtrace:
=>0 0x7ea65e06 PostMessageW+0x76(hwnd=<couldn't compute location>, msg=<couldn't compute location>, wparam=<couldn't compute location>, lparam=<couldn't compute location>) [./dlls/user32/message.c:3661] in user32 (0x0060f518)
1 0x7ea65fb6 PostMessageA+0x55(wparam=<couldn't compute location>) [./dlls/user32/message.c:3638] in user32 (0x0060f568)
2 0x7db6927e TABLET_PostTabletMessage+0x4d() in wintab32 (0x0060f598)
3 0x7db69e23 WTOpenW+0x4f2(hWnd=<couldn't compute location>, lpLogCtx=<couldn't compute location>, fEnable=<couldn't compute location>) [./dlls/wintab32/context.c:487] in wintab32 (0x0060f758)
4 0x02596789 in qwindows (+0x66788) (0x00020062)
Reply to: