Jacek Caban (@jacek) commented about dlls/user32/tests/msg.c:
+ { WS_EX_COMPOSITED, WS_CLIPCHILDREN, TRUE , HWND_BOTTOM }, + { WS_EX_COMPOSITED, 0, FALSE, NULL }, + { WS_EX_COMPOSITED, 0, TRUE , HWND_TOP }, + { WS_EX_COMPOSITED, 0, TRUE , HWND_BOTTOM }, + }; + size_t i; + HWND htoplevel = NULL, hparent, hchild, hauxchild; + const RECT rect_old = { 10, 10, 100, 100 }; + HRGN hrgn_old_vis = CreateRectRgn( 0, 0, 0, 0 ); + HRGN hrgn_new_vis = CreateRectRgn( 0, 0, 0, 0 ); + HRGN hrgn_expect = CreateRectRgn( 0, 0, 0, 0 ); + HRGN hrgn_actual = CreateRectRgn( 0, 0, 0, 0 ); + HRGN hrgn_old_vis_child = CreateRectRgn( 0, 0, 0, 0 ); + HRGN hrgn_new_vis_child = CreateRectRgn( 0, 0, 0, 0 ); + HRGN hrgn_expect_child = CreateRectRgn( 0, 0, 0, 0 ); + HRGN hrgn_actual_child = CreateRectRgn( 0, 0, 0, 0 ); You never clean up those regions.
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/363#note_11321