Alexandre Julliard : winex11: Don' t call get_xrender_picture inside the X11 lock.

Alexandre Julliard julliard at winehq.org
Wed Dec 7 13:57:14 CST 2011


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

Author: Alexandre Julliard <julliard at winehq.org>
Date:   Wed Dec  7 17:57:32 2011 +0100

winex11: Don't call get_xrender_picture inside the X11 lock.

---

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

diff --git a/dlls/winex11.drv/xrender.c b/dlls/winex11.drv/xrender.c
index d81130d..21c1280 100644
--- a/dlls/winex11.drv/xrender.c
+++ b/dlls/winex11.drv/xrender.c
@@ -2621,9 +2621,10 @@ static BOOL xrenderdrv_GradientFill( PHYSDEV dev, TRIVERTEX *vert_array, ULONG n
                    colors[0].red, colors[0].green, colors[0].blue, colors[0].alpha,
                    colors[1].red, colors[1].green, colors[1].blue, colors[1].alpha );
 
+            dst_pict = get_xrender_picture( physdev, 0, NULL );
+
             wine_tsx11_lock();
             src_pict = pXRenderCreateLinearGradient( gdi_display, &gradient, stops, colors, 2 );
-            dst_pict = get_xrender_picture( physdev, 0, NULL );
             xrender_blit( PictOpSrc, src_pict, 0, dst_pict, 0, 0,
                           physdev->x11dev->dc_rect.left + min( pt[0].x, pt[1].x ),
                           physdev->x11dev->dc_rect.top + min( pt[0].y, pt[1].y ),




More information about the wine-cvs mailing list