blob: 16d74c3aa21ed26b03a0e1b9f90f2aea6c3176dd (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
This file is part of MXE.
See index.html for further information.
When DllMain is not being run, we need to initialize the font face mutex before using it.
diff --git a/src/win32/cairo-win32-font.c b/src/win32/cairo-win32-font.c
index a65d81b..31d854d 100644
--- a/src/win32/cairo-win32-font.c
+++ b/src/win32/cairo-win32-font.c
@@ -1912,6 +1912,8 @@ _cairo_win32_font_face_hash_table_destroy (void)
{
cairo_hash_table_t *hash_table;
+ CAIRO_MUTEX_INITIALIZE ();
+
/* We manually acquire the lock rather than calling
* _cairo_win32_font_face_hash_table_lock simply to avoid creating
* the table only to destroy it again. */
@@ -1927,6 +1929,8 @@ _cairo_win32_font_face_hash_table_destroy (void)
static cairo_hash_table_t *
_cairo_win32_font_face_hash_table_lock (void)
{
+ CAIRO_MUTEX_INITIALIZE ();
+
CAIRO_MUTEX_LOCK (_cairo_win32_font_face_mutex);
if (unlikely (cairo_win32_font_face_hash_table == NULL))
|