[cairo] [PATCH] Initialize mutexes for static builds for win32
Alexander Täschner
alexandertaeschner at googlemail.com
Wed Jun 7 14:01:51 UTC 2017
For static builds for win32 the mutexes are not initialized (for dynamic
builds its done when the DLL is loaded). Therefore the patch add
initialization to the create surface calls.
---
src/win32/cairo-win32-display-surface.c | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/src/win32/cairo-win32-display-surface.c
b/src/win32/cairo-win32-display-surface.c
index 025b2c9..56f0e65 100644
--- a/src/win32/cairo-win32-display-surface.c
+++ b/src/win32/cairo-win32-display-surface.c
@@ -953,7 +953,9 @@ cairo_win32_surface_create_with_format (HDC hdc,
cairo_format_t format)
case CAIRO_FORMAT_RGB24:
break;
}
-
+#if CAIRO_WIN32_STATIC_BUILD
+ CAIRO_MUTEX_INITIALIZE ();
+#endif
surface = malloc (sizeof (*surface));
if (surface == NULL)
return _cairo_surface_create_in_error (_cairo_error
(CAIRO_STATUS_NO_MEMORY));
@@ -1031,7 +1033,9 @@ cairo_win32_surface_create_with_dib (cairo_format_t
format,
{
if (! CAIRO_FORMAT_VALID (format))
return _cairo_surface_create_in_error (_cairo_error
(CAIRO_STATUS_INVALID_FORMAT));
-
+#if CAIRO_WIN32_STATIC_BUILD
+ CAIRO_MUTEX_INITIALIZE ();
+#endif
return _cairo_win32_display_surface_create_for_dc (NULL, format,
width, height);
}
--
2.10.2.windows.1
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.cairographics.org/archives/cairo/attachments/20170607/d614fac6/attachment.html>
More information about the cairo
mailing list