diff --git a/win32ss/gdi/ntgdi/gdiobj.c b/win32ss/gdi/ntgdi/gdiobj.c index 00c85f5f9dc..918c8dddfd7 100644 --- a/win32ss/gdi/ntgdi/gdiobj.c +++ b/win32ss/gdi/ntgdi/gdiobj.c @@ -479,6 +479,13 @@ ENTRY_ReferenceEntryByHandle(HGDIOBJ hobj, FLONG fl) { ULONG ulIndex, cNewRefs, cOldRefs; PENTRY pentry; + PTHREADINFO pti = PsGetCurrentThreadWin32Thread(); + + /* HACK: This may be a hack but it fixes CORE-5601. + * Allow a window that is moving or resizing to have access to all of its child + * windows dc's even if the dc belongs to another process i.e. 3D Screensaver */ + if (pti && pti->TIF_flags & TIF_MOVESIZETRACKING) + fl = GDIOBJFLAG_IGNOREPID; /* Get the handle index and check if its too big */ ulIndex = GDI_HANDLE_GET_INDEX(hobj);