Mercurial > mxe-octave
view src/cairo-2-static-init.patch @ 4665:6592c495d120
of-optiminterp: add new package
* src/of-optiminterp.mk: add new mk file
* Makefile.in: add optiminterp to package list
* build_packages.m: add optiminterp to install script
* dist-files.mk: add ref to of-optiminterp.mk
* index.html: add of-optiminterp entry
author | John Donoghue |
---|---|
date | Tue, 17 Apr 2018 13:22:06 -0400 |
parents | 6aaa1723e277 |
children |
line wrap: on
line source
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,10 @@ _cairo_win32_font_face_hash_table_destroy (void) { cairo_hash_table_t *hash_table; +#ifndef DLL_EXPORT + CAIRO_MUTEX_INITIALIZE (); +#endif + /* 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,10 @@ _cairo_win32_font_face_hash_table_destroy (void) static cairo_hash_table_t * _cairo_win32_font_face_hash_table_lock (void) { +#ifndef DLL_EXPORT + CAIRO_MUTEX_INITIALIZE (); +#endif + CAIRO_MUTEX_LOCK (_cairo_win32_font_face_mutex); if (unlikely (cairo_win32_font_face_hash_table == NULL))