Module: wine Branch: master Commit: ddf41276e145896664834828389d1ff6f1567f8c URL: http://source.winehq.org/git/wine.git/?a=commit;h=ddf41276e14589666483482838...
Author: Alexandre Julliard julliard@winehq.org Date: Mon Oct 1 13:17:53 2012 +0200
user32: Invalid DCEs when the window surface changes.
---
dlls/user32/winpos.c | 10 +++++++--- 1 files changed, 7 insertions(+), 3 deletions(-)
diff --git a/dlls/user32/winpos.c b/dlls/user32/winpos.c index 0593140..c866a5d 100644 --- a/dlls/user32/winpos.c +++ b/dlls/user32/winpos.c @@ -2017,9 +2017,13 @@ BOOL set_window_pos( HWND hwnd, HWND insert_after, UINT swp_flags, } SERVER_END_REQ;
- if (ret && (((swp_flags & SWP_AGG_NOPOSCHANGE) != SWP_AGG_NOPOSCHANGE) || - (swp_flags & (SWP_HIDEWINDOW | SWP_SHOWWINDOW | SWP_STATECHANGED | SWP_FRAMECHANGED)))) - invalidate_dce( win, &old_window_rect ); + if (ret) + { + if (old_surface != new_surface || + ((swp_flags & SWP_AGG_NOPOSCHANGE) != SWP_AGG_NOPOSCHANGE) || + (swp_flags & (SWP_HIDEWINDOW | SWP_SHOWWINDOW | SWP_STATECHANGED | SWP_FRAMECHANGED))) + invalidate_dce( win, &old_window_rect ); + }
WIN_ReleasePtr( win );