Alexandre Julliard : winex11: The xrender tile picture must be used only inside the critical section.

Alexandre Julliard julliard at winehq.org
Wed Oct 14 09:02:02 CDT 2009


Module: wine
Branch: master
Commit: af683e711c4441d7e95dd0bf58271e3fc6d94caf
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=af683e711c4441d7e95dd0bf58271e3fc6d94caf

Author: Alexandre Julliard <julliard at winehq.org>
Date:   Wed Oct 14 14:24:17 2009 +0200

winex11: The xrender tile picture must be used only inside the critical section.

---

 dlls/winex11.drv/xrender.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/dlls/winex11.drv/xrender.c b/dlls/winex11.drv/xrender.c
index d83c53d..aac0411 100644
--- a/dlls/winex11.drv/xrender.c
+++ b/dlls/winex11.drv/xrender.c
@@ -2170,6 +2170,7 @@ BOOL X11DRV_XRender_GetSrcAreaStretch(X11DRV_PDEVICE *physDevSrc, X11DRV_PDEVICE
         mask_pict = get_xrender_picture_source(physDevSrc);
 
         /* Use backgroundPixel as the foreground color */
+        EnterCriticalSection( &xrender_cs );
         src_pict = get_tile_pict(dst_format, physDevDst->backgroundPixel);
 
         /* Create a destination picture and fill it with textPixel color as the background color */
@@ -2181,6 +2182,7 @@ BOOL X11DRV_XRender_GetSrcAreaStretch(X11DRV_PDEVICE *physDevSrc, X11DRV_PDEVICE
 
         if(dst_pict) pXRenderFreePicture(gdi_display, dst_pict);
         wine_tsx11_unlock();
+        LeaveCriticalSection( &xrender_cs );
     }
     else /* color -> color but with different depths */
     {




More information about the wine-cvs mailing list