[prev in list] [next in list] [prev in thread] [next in thread]
List: wine-devel
Subject: BeginPaint not called on WM_PAINT...
From: Andreas Mohr <a.mohr () mailto ! de>
Date: 2001-09-25 20:56:01
[Download RAW message or body]
Hi all,
the game Undying emits lots and lots of
err:msg:DispatchMessageA BeginPaint not called on WM_PAINT for hwnd 20029!
errors.
This is because it simply does:
0806d2c8:Call user32.DispatchMessageA(406c29b0) ret=1090e313
0806d2c8:Call window proc 0x11001530 (hwnd=00020029,msg=WM_PAINT,wp=00000000,lp=00000000)
0806d2c8:Call user32.ValidateRect(00020029,00000000) ret=11107b57
0806d2c8:Ret user32.ValidateRect() retval=00000001 ret=11107b57
0806d2c8:Ret window proc 0x11001530 (hwnd=00020029,msg=WM_PAINT,wp=00000000,lp=00000000) retval=00000000
This seems to be perfectly legal in order to validate the whole window
update rect (NULL) and thus prevent further WM_PAINTs.
(as http://www.intrepidhero.com/articles/wgpfd_errata/part2.html hints)
In short: the wine error message is erroneous in this case.
The Wine check is:
if (painting && wndPtr &&
(wndPtr->flags & WIN_NEEDS_BEGINPAINT) && wndPtr->hrgnUpdate)
{
ERR("BeginPaint not called on WM_PAINT for hwnd %04x!\n",
msg->hwnd);
So I assume that either
a)
some flag or so doesn't get updated properly by that ValidateRect()
or
b)
the error message check condition is (slightly) wrong.
Could someone please fix this ?
This happened to #WineHQ nick Thunderbird with latest version of
winex (20010824).
--
Andreas Mohr Stauferstr. 6, D-71272 Renningen, Germany
Tel. +49 7159 800604 http://home.nexgo.de/andi.mohr/
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic