Alexandre,
could you please give a short comment on this one?
Thanks,
Michael
---------- Forwarded Message ----------
Subject: wineserver: fix get_update_region for desktop window
Date: Wednesday 05 January 2005 00:36
From: Michael Jung <mjung at iss.tu-darmstadt.de>
To: wine-devel at winehq.org
Cc: wine-patches at winehq.org
Calling SetSysColor in the current cvs version of wine causes an infinite
loop in update_now in dlls/user/painting.c. As I understand it, the problem
is the following: get_update_flags will promote it's child window argument
to the next child window (via a wineserver call to get_update_region), if
the current child doesn't need any repaint. Calling get_update_flags on the
desktop window will always return a repaint flag, so it never gets ahead.
The attached patch automatically promotes the child window argument to the
first child, if called on the desktop window. I don't know if this really is
the desired behaviour. Another fix would be to not return any repaint flags
for the desktop window.
Ciao,
Michael
-------------------------------------------------------