Mercurial > mxe-octave
view src/cairo-2-static-init.patch @ 4066:0962acdde3be
builld: allow out of source build
* Makefile.in: add TOP_BUILD_DIR var and use TOP_DIR=srcdir, TOP_BUILD_DIR=builddir, modify paths to use TOP_DIR where needed
* binary-dist-rules.mk: use TOP_DIR and TOP_BUILD_DIR where needed
* makeinst-script.sh: use script path to determine TOPDIR, use TOPDIR where needed
* src/default-octave.mk: install octave-version to builddir
* src/stable-octave.mk: install octave-version to builddir
* src/octave.mk: install octave-version to builddir
* tools/set-mxe-env.sh.in: update fir builddir and srcdir use
author | John Donoghue |
---|---|
date | Wed, 23 Dec 2015 08:11:04 -0500 |
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))