[PATCH] gdi32: unlock critsection on error exit (Coverity)

Marcus Meissner marcus at jet.franken.de
Fri Aug 21 02:30:35 CDT 2015


713131 Missing unlock
---
 dlls/gdi32/freetype.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/dlls/gdi32/freetype.c b/dlls/gdi32/freetype.c
index c67465a..a09905d 100644
--- a/dlls/gdi32/freetype.c
+++ b/dlls/gdi32/freetype.c
@@ -5864,7 +5864,10 @@ static BOOL freetype_EnumFonts( PHYSDEV dev, LPLOGFONTW plf, FONTENUMPROCW proc,
             face_list = get_face_list_from_family(family);
             LIST_FOR_EACH_ENTRY( face, face_list, Face, entry ) {
                 if (!face_matches(family->FamilyName, face, face_name)) continue;
-                if (!enum_face_charsets(family, face, &enum_charsets, proc, lparam, psub ? psub->from.name : NULL)) return FALSE;
+                if (!enum_face_charsets(family, face, &enum_charsets, proc, lparam, psub ? psub->from.name : NULL)) {
+                    LeaveCriticalSection( &freetype_cs );
+                    return FALSE;
+                }
 	    }
 	}
     } else {
-- 
2.5.0




More information about the wine-patches mailing list