/* structs_gmutex.c generated by valac, the Vala compiler * generated from structs_gmutex.vala, do not modify */ #include #include #define _vala_assert(expr, msg) if G_LIKELY (expr) ; else g_assertion_message_expr (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, msg); #define _vala_return_if_fail(expr, msg) if G_LIKELY (expr) ; else { g_return_if_fail_warning (G_LOG_DOMAIN, G_STRFUNC, msg); return; } #define _vala_return_val_if_fail(expr, msg, val) if G_LIKELY (expr) ; else { g_return_if_fail_warning (G_LOG_DOMAIN, G_STRFUNC, msg); return val; } #define _vala_warn_if_fail(expr, msg) if G_LIKELY (expr) ; else g_warn_message (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, msg); static void _vala_main (void); static void _vala_clear_GMutex (GMutex * mutex); static void _vala_clear_GRecMutex (GRecMutex * mutex); static void _vala_clear_GRWLock (GRWLock * mutex); static void _vala_clear_GCond (GCond * mutex); static void _vala_main (void) { { GMutex mutex = {0}; g_mutex_init (&mutex); g_mutex_lock (&mutex); _vala_assert (!g_mutex_trylock (&mutex), "!mutex.trylock ()"); g_mutex_unlock (&mutex); _vala_clear_GMutex (&mutex); } { GRecMutex mutex = {0}; g_rec_mutex_init (&mutex); g_rec_mutex_lock (&mutex); _vala_assert (g_rec_mutex_trylock (&mutex), "mutex.trylock ()"); g_rec_mutex_unlock (&mutex); g_rec_mutex_unlock (&mutex); _vala_clear_GRecMutex (&mutex); } } int main (int argc, char ** argv) { _vala_main (); return 0; } static void _vala_clear_GMutex (GMutex * mutex) { GMutex zero_mutex = { 0 }; if (memcmp (mutex, &zero_mutex, sizeof (GMutex))) { g_mutex_clear (mutex); memset (mutex, 0, sizeof (GMutex)); } } static void _vala_clear_GRecMutex (GRecMutex * mutex) { GRecMutex zero_mutex = { 0 }; if (memcmp (mutex, &zero_mutex, sizeof (GRecMutex))) { g_rec_mutex_clear (mutex); memset (mutex, 0, sizeof (GRecMutex)); } } static void _vala_clear_GRWLock (GRWLock * mutex) { GRWLock zero_mutex = { 0 }; if (memcmp (mutex, &zero_mutex, sizeof (GRWLock))) { g_rw_lock_clear (mutex); memset (mutex, 0, sizeof (GRWLock)); } } static void _vala_clear_GCond (GCond * mutex) { GCond zero_mutex = { 0 }; if (memcmp (mutex, &zero_mutex, sizeof (GCond))) { g_cond_clear (mutex); memset (mutex, 0, sizeof (GCond)); } }