Correctly handle empty rects on region initialization.

This commit is contained in:
Zack Rusin 2005-06-25 12:39:58 +00:00
parent 5620122206
commit 582a9f0d2e

View File

@ -250,9 +250,25 @@ extern RegDataRec miBrokenData;
#define REGION_INIT(_pScreen, _pReg, _rect, _size) \ #define REGION_INIT(_pScreen, _pReg, _rect, _size) \
{ \ { \
REGION_SCREEN(_pScreen); \ REGION_SCREEN(_pScreen); \
(_pReg)->extents = *(_rect); \ if (_rect) \
(_pReg)->data = (RegDataPtr)NULL; \ { \
} (_pReg)->extents = *(_rect); \
(_pReg)->data = (RegDataPtr)NULL; \
} \
else \
{ \
(_pReg)->extents = miEmptyBox; \
if (((_size) > 1) && ((_pReg)->data = \
(RegDataPtr)xalloc(REGION_SZOF(_size)))) \
{ \
(_pReg)->data->size = (_size); \
(_pReg)->data->numRects = 0; \
} \
else \
(_pReg)->data = &miEmptyData; \
} \
}
#define REGION_UNINIT(_pScreen, _pReg) \ #define REGION_UNINIT(_pScreen, _pReg) \
{ \ { \