Fix return value for OffsetRgn if x and y are 0.
diff --git a/objects/region.c b/objects/region.c
index 2043018..d397cf3 100644
--- a/objects/region.c
+++ b/objects/region.c
@@ -505,14 +505,17 @@
INT WINAPI OffsetRgn( HRGN hrgn, INT x, INT y )
{
RGNOBJ * obj = (RGNOBJ *) GDI_GetObjPtr( hrgn, REGION_MAGIC );
+ INT ret;
- if (obj && (x || y))
- {
- INT ret;
+ TRACE("%04x %d,%d\n", hrgn, x, y);
+
+ if (!obj)
+ return ERROR;
+
+ if(x || y) {
int nbox = obj->rgn->numRects;
RECT *pbox = obj->rgn->rects;
- TRACE(" %04x %d,%d\n", hrgn, x, y );
if(nbox) {
while(nbox--) {
pbox->left += x;
@@ -526,11 +529,10 @@
obj->rgn->extents.top += y;
obj->rgn->extents.bottom += y;
}
- ret = obj->rgn->type;
- GDI_HEAP_UNLOCK( hrgn );
- return ret;
}
- return ERROR;
+ ret = obj->rgn->type;
+ GDI_HEAP_UNLOCK( hrgn );
+ return ret;
}