diff --git a/ChangeLog b/ChangeLog index 8a68571a..ffb5abdb 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,6 @@ 25/4/15 started 8.0.1 - fix some compiler warnings +- work around a glib bug that can cause segv under load 11/2/15 started 8.0 - remove old doc stuff, lots of doc improvements diff --git a/libvips/iofuncs/init.c b/libvips/iofuncs/init.c index ddc785c5..7f760d5e 100644 --- a/libvips/iofuncs/init.c +++ b/libvips/iofuncs/init.c @@ -277,6 +277,12 @@ vips_init( const char *argv0 ) g_thread_init( NULL ); #endif + /* This does an unsynchronised static hash table init on first call -- + * we have to make sure we do this single-threaded. See: + * https://github.com/openslide/openslide/issues/161 + */ + (void) g_get_language_names(); + if( !vips__global_lock ) vips__global_lock = vips_g_mutex_new();