diff --git a/src/utils/fluid_sys.h b/src/utils/fluid_sys.h index b75b6b8f..0803bb14 100644 --- a/src/utils/fluid_sys.h +++ b/src/utils/fluid_sys.h @@ -190,10 +190,10 @@ typedef GStaticMutex fluid_mutex_t; #define fluid_mutex_lock(_m) g_static_mutex_lock(&(_m)) #define fluid_mutex_unlock(_m) g_static_mutex_unlock(&(_m)) -#define fluid_mutex_init(_m) G_STMT_START { \ +#define fluid_mutex_init(_m) do { \ if (!g_thread_supported ()) g_thread_init (NULL); \ g_static_mutex_init (&(_m)); \ -} G_STMT_END; +} while(0) /* Recursive lock capable mutex */ typedef GStaticRecMutex fluid_rec_mutex_t; @@ -201,10 +201,10 @@ typedef GStaticRecMutex fluid_rec_mutex_t; #define fluid_rec_mutex_lock(_m) g_static_rec_mutex_lock(&(_m)) #define fluid_rec_mutex_unlock(_m) g_static_rec_mutex_unlock(&(_m)) -#define fluid_rec_mutex_init(_m) G_STMT_START { \ +#define fluid_rec_mutex_init(_m) do { \ if (!g_thread_supported ()) g_thread_init (NULL); \ g_static_rec_mutex_init (&(_m)); \ -} G_STMT_END; +} while(0) /* Dynamically allocated mutex suitable for fluid_cond_t use */ typedef GMutex fluid_cond_mutex_t; @@ -233,10 +233,10 @@ typedef GStaticPrivate fluid_private_t; #define fluid_private_set(_priv, _data) g_static_private_set(&(_priv), _data, NULL) #define fluid_private_free(_priv) g_static_private_free(&(_priv)) -#define fluid_private_init(_priv) G_STMT_START { \ +#define fluid_private_init(_priv) do { \ if (!g_thread_supported ()) g_thread_init (NULL); \ g_static_private_init (&(_priv)); \ -} G_STMT_END; +} while(0) #endif