From 44c2db175b9b75254785084ef477cf736352c398 Mon Sep 17 00:00:00 2001 From: Ken Thomases Date: Wed, 21 Feb 2007 10:50:36 -0600 Subject: [PATCH] winex11.drv: Pass correct coords into X11DRV_InternalFloodFill. The (x,y) should be relative to the XImage, not the drawable. The (xOrg,yOrg) is what should be relative to the drawable. This fixes a crash when XGetPixel tried to access memory outside the XImage's buffer. --- dlls/winex11.drv/graphics.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/dlls/winex11.drv/graphics.c b/dlls/winex11.drv/graphics.c index d8e5f9155dd..638356b5aa4 100644 --- a/dlls/winex11.drv/graphics.c +++ b/dlls/winex11.drv/graphics.c @@ -1312,9 +1312,10 @@ X11DRV_ExtFloodFill( X11DRV_PDEVICE *physDev, INT x, INT y, COLORREF color, wine_tsx11_lock(); XSetFunction( gdi_display, physDev->gc, GXcopy ); X11DRV_InternalFloodFill(image, physDev, - physDev->dc_rect.left + pt.x - rect.left, - physDev->dc_rect.top + pt.y - rect.top, - rect.left, rect.top, + pt.x - rect.left, + pt.y - rect.top, + physDev->dc_rect.left + rect.left, + physDev->dc_rect.top + rect.top, X11DRV_PALETTE_ToPhysical( physDev, color ), fillType ); wine_tsx11_unlock();