http://bugs.winehq.org/show_bug.cgi?id=6311
--- Comment #26 from EA Durbin ead1234@hotmail.com 2008-03-12 01:01:05 --- Created an attachment (id=11335) --> (http://bugs.winehq.org/attachment.cgi?id=11335) bug demonstration
the addition of the !valid_rects in the client_changed assignment causes it to enter into the if (frame_changed || client_changed) block as client_changed is now set because !valid_rects is true, whereas before this commit it never entered into this if statement.
skipping this chunk of code within this if statement also fixes my application ----- if (!is_desktop_window(win)) offset_region( win_rgn, -client_rect->left, -client_rect->top ); if (exposed_rgn) { union_region( exposed_rgn, exposed_rgn, win_rgn ); if (win_rgn != old_vis_rgn) free_region( win_rgn ); } else { exposed_rgn = win_rgn; if (win_rgn == old_vis_rgn) old_vis_rgn = NULL; } ----