Alexandre Julliard : gdi32: Don' t hold the GDI lock while calling the driver path functions.
Alexandre Julliard
julliard at winehq.org
Tue Sep 25 07:50:46 CDT 2007
Module: wine
Branch: master
Commit: 0c4f81eefca57261aee954a4ce06fba8abb947b6
URL: http://source.winehq.org/git/wine.git/?a=commit;h=0c4f81eefca57261aee954a4ce06fba8abb947b6
Author: Alexandre Julliard <julliard at winehq.org>
Date: Mon Sep 24 18:16:29 2007 +0200
gdi32: Don't hold the GDI lock while calling the driver path functions.
---
dlls/gdi32/path.c | 48 ++++++++++++++++++++++++------------------------
1 files changed, 24 insertions(+), 24 deletions(-)
diff --git a/dlls/gdi32/path.c b/dlls/gdi32/path.c
index b887a86..683bdba 100644
--- a/dlls/gdi32/path.c
+++ b/dlls/gdi32/path.c
@@ -129,7 +129,7 @@ static inline void INTERNAL_LPTODP_FLOAT(DC *dc, FLOAT_POINT *point)
BOOL WINAPI BeginPath(HDC hdc)
{
BOOL ret = TRUE;
- DC *dc = DC_GetDCPtr( hdc );
+ DC *dc = get_dc_ptr( hdc );
if(!dc) return FALSE;
@@ -148,7 +148,7 @@ BOOL WINAPI BeginPath(HDC hdc)
dc->path.state=PATH_Open;
}
}
- DC_ReleaseDCPtr( dc );
+ release_dc_ptr( dc );
return ret;
}
@@ -159,7 +159,7 @@ BOOL WINAPI BeginPath(HDC hdc)
BOOL WINAPI EndPath(HDC hdc)
{
BOOL ret = TRUE;
- DC *dc = DC_GetDCPtr( hdc );
+ DC *dc = get_dc_ptr( hdc );
if(!dc) return FALSE;
@@ -176,7 +176,7 @@ BOOL WINAPI EndPath(HDC hdc)
/* Set flag to indicate that path is finished */
else dc->path.state=PATH_Closed;
}
- DC_ReleaseDCPtr( dc );
+ release_dc_ptr( dc );
return ret;
}
@@ -198,7 +198,7 @@ BOOL WINAPI EndPath(HDC hdc)
BOOL WINAPI AbortPath( HDC hdc )
{
BOOL ret = TRUE;
- DC *dc = DC_GetDCPtr( hdc );
+ DC *dc = get_dc_ptr( hdc );
if(!dc) return FALSE;
@@ -206,7 +206,7 @@ BOOL WINAPI AbortPath( HDC hdc )
ret = dc->funcs->pAbortPath(dc->physDev);
else /* Remove all entries from the path */
PATH_EmptyPath( &dc->path );
- DC_ReleaseDCPtr( dc );
+ release_dc_ptr( dc );
return ret;
}
@@ -219,7 +219,7 @@ BOOL WINAPI AbortPath( HDC hdc )
BOOL WINAPI CloseFigure(HDC hdc)
{
BOOL ret = TRUE;
- DC *dc = DC_GetDCPtr( hdc );
+ DC *dc = get_dc_ptr( hdc );
if(!dc) return FALSE;
@@ -245,7 +245,7 @@ BOOL WINAPI CloseFigure(HDC hdc)
}
}
}
- DC_ReleaseDCPtr( dc );
+ release_dc_ptr( dc );
return ret;
}
@@ -258,7 +258,7 @@ INT WINAPI GetPath(HDC hdc, LPPOINT pPoints, LPBYTE pTypes,
{
INT ret = -1;
GdiPath *pPath;
- DC *dc = DC_GetDCPtr( hdc );
+ DC *dc = get_dc_ptr( hdc );
if(!dc) return -1;
@@ -293,7 +293,7 @@ INT WINAPI GetPath(HDC hdc, LPPOINT pPoints, LPBYTE pTypes,
else ret = pPath->numEntriesUsed;
}
done:
- DC_ReleaseDCPtr( dc );
+ release_dc_ptr( dc );
return ret;
}
@@ -311,7 +311,7 @@ HRGN WINAPI PathToRegion(HDC hdc)
{
GdiPath *pPath;
HRGN hrgnRval = 0;
- DC *dc = DC_GetDCPtr( hdc );
+ DC *dc = get_dc_ptr( hdc );
/* Get pointer to path */
if(!dc) return 0;
@@ -328,7 +328,7 @@ HRGN WINAPI PathToRegion(HDC hdc)
else
hrgnRval=0;
}
- DC_ReleaseDCPtr( dc );
+ release_dc_ptr( dc );
return hrgnRval;
}
@@ -414,7 +414,7 @@ static BOOL PATH_FillPath(DC *dc, GdiPath *pPath)
*/
BOOL WINAPI FillPath(HDC hdc)
{
- DC *dc = DC_GetDCPtr( hdc );
+ DC *dc = get_dc_ptr( hdc );
BOOL bRet = FALSE;
if(!dc) return FALSE;
@@ -431,7 +431,7 @@ BOOL WINAPI FillPath(HDC hdc)
PATH_EmptyPath(&dc->path);
}
}
- DC_ReleaseDCPtr( dc );
+ release_dc_ptr( dc );
return bRet;
}
@@ -446,7 +446,7 @@ BOOL WINAPI SelectClipPath(HDC hdc, INT iMode)
GdiPath *pPath;
HRGN hrgnPath;
BOOL success = FALSE;
- DC *dc = DC_GetDCPtr( hdc );
+ DC *dc = get_dc_ptr( hdc );
if(!dc) return FALSE;
@@ -471,7 +471,7 @@ BOOL WINAPI SelectClipPath(HDC hdc, INT iMode)
/* FIXME: Should this function delete the path even if it failed? */
}
}
- DC_ReleaseDCPtr( dc );
+ release_dc_ptr( dc );
return success;
}
@@ -1698,7 +1698,7 @@ static void PATH_NormalizePoint(FLOAT_POINT corners[],
BOOL WINAPI FlattenPath(HDC hdc)
{
BOOL ret = FALSE;
- DC *dc = DC_GetDCPtr( hdc );
+ DC *dc = get_dc_ptr( hdc );
if(!dc) return FALSE;
@@ -1709,7 +1709,7 @@ BOOL WINAPI FlattenPath(HDC hdc)
if(pPath->state != PATH_Closed)
ret = PATH_FlattenPath(pPath);
}
- DC_ReleaseDCPtr( dc );
+ release_dc_ptr( dc );
return ret;
}
@@ -2191,7 +2191,7 @@ static BOOL PATH_WidenPath(DC *dc)
*/
BOOL WINAPI StrokeAndFillPath(HDC hdc)
{
- DC *dc = DC_GetDCPtr( hdc );
+ DC *dc = get_dc_ptr( hdc );
BOOL bRet = FALSE;
if(!dc) return FALSE;
@@ -2204,7 +2204,7 @@ BOOL WINAPI StrokeAndFillPath(HDC hdc)
if(bRet) bRet = PATH_StrokePath(dc, &dc->path);
if(bRet) PATH_EmptyPath(&dc->path);
}
- DC_ReleaseDCPtr( dc );
+ release_dc_ptr( dc );
return bRet;
}
@@ -2216,7 +2216,7 @@ BOOL WINAPI StrokeAndFillPath(HDC hdc)
*/
BOOL WINAPI StrokePath(HDC hdc)
{
- DC *dc = DC_GetDCPtr( hdc );
+ DC *dc = get_dc_ptr( hdc );
GdiPath *pPath;
BOOL bRet = FALSE;
@@ -2231,7 +2231,7 @@ BOOL WINAPI StrokePath(HDC hdc)
bRet = PATH_StrokePath(dc, pPath);
PATH_EmptyPath(pPath);
}
- DC_ReleaseDCPtr( dc );
+ release_dc_ptr( dc );
return bRet;
}
@@ -2243,7 +2243,7 @@ BOOL WINAPI StrokePath(HDC hdc)
*/
BOOL WINAPI WidenPath(HDC hdc)
{
- DC *dc = DC_GetDCPtr( hdc );
+ DC *dc = get_dc_ptr( hdc );
BOOL ret = FALSE;
if(!dc) return FALSE;
@@ -2252,6 +2252,6 @@ BOOL WINAPI WidenPath(HDC hdc)
ret = dc->funcs->pWidenPath(dc->physDev);
else
ret = PATH_WidenPath(dc);
- DC_ReleaseDCPtr( dc );
+ release_dc_ptr( dc );
return ret;
}
More information about the wine-cvs
mailing list