rootless: Fix bogus handling of broken root clip
gcc quite correctly complains about this: In file included from ../../include/scrnintstr.h:51:0, from rootlessValTree.c:98: In function 'RegionUninit.isra.1', inlined from 'RegionEmpty' at ../../include/regionstr.h:194:5, inlined from 'RootlessMiValidateTree' at rootlessValTree.c:490:9: ../../include/regionstr.h:166:9: warning: attempt to free a non-heap object 'RegionBrokenData' [-Wfree-nonheap-object] free((_pReg)->data); So that'd crash if you ever got there. RegionNull will do almost the same thing only without the free(), so let's do that instead; it might still not be an entirely sane way to recover, but it at least won't crash. Reviewed-by: Keith Packard <keithp@keithp.com> Signed-off-by: Adam Jackson <ajax@redhat.com>
This commit is contained in:
parent
b25f7d0c16
commit
fa0bb01899
|
@ -487,7 +487,7 @@ RootlessMiValidateTree(WindowPtr pRoot, /* Parent to validate */
|
|||
if (RegionBroken(&pRoot->clipList) && !RegionBroken(&pRoot->borderClip)) {
|
||||
// fixme this might not work, but hopefully doesn't happen anyway.
|
||||
kind = VTBroken;
|
||||
RegionEmpty(&pRoot->clipList);
|
||||
RegionNull(&pRoot->clipList);
|
||||
ErrorF("ValidateTree: BUSTED!\n");
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue