diff --git a/reactos/win32ss/user/ntuser/vis.c b/reactos/win32ss/user/ntuser/vis.c index 1f0b7dc98f7..522e76304b6 100644 --- a/reactos/win32ss/user/ntuser/vis.c +++ b/reactos/win32ss/user/ntuser/vis.c @@ -45,10 +45,9 @@ VIS_ComputeVisibleRegion( CurrentWindow = Wnd->spwndParent; while (CurrentWindow) { - if ( CurrentWindow->state2 & WNDS2_INDESTROY || - CurrentWindow->state & WNDS_DESTROYED ) + if (!VerifyWnd(CurrentWindow)) { - ERR("ATM the Current Window or Parent is dead!\n"); + ERR("ATM the Current Window or Parent is dead! %p\n",CurrentWindow); if (VisRgn) GreDeleteObject(VisRgn); return NULL; } diff --git a/reactos/win32ss/user/ntuser/windc.c b/reactos/win32ss/user/ntuser/windc.c index e81b61ec2e3..4e697dfc079 100644 --- a/reactos/win32ss/user/ntuser/windc.c +++ b/reactos/win32ss/user/ntuser/windc.c @@ -245,7 +245,7 @@ noparent: Dce->DCXFlags &= ~DCX_DCEDIRTY; GdiSelectVisRgn(Dce->hDC, hRgnVisible); - if (Window != NULL) + if (VerifyWnd(Window)) // Window maybe dead by this time before finishing the DCE release. { IntEngWindowChanged(Window, WOC_RGN_CLIENT); }