Blob Blame History Raw
diff -up gsmartcontrol-0.8.6/src/hz/sync_policy_glib.h.gstaticmutex gsmartcontrol-0.8.6/src/hz/sync_policy_glib.h
--- gsmartcontrol-0.8.6/src/hz/sync_policy_glib.h.gstaticmutex	2011-03-06 01:21:07.000000000 -0800
+++ gsmartcontrol-0.8.6/src/hz/sync_policy_glib.h	2011-12-12 22:45:43.000000000 -0800
@@ -17,30 +17,14 @@
 // Glib-based policy.
 
 
-// Note: g_static_mutex_*lock() functions may give warnings about breaking strict-aliasing rules.
-// The warnings are completely harmless and visible on some versions of glib only.
-// However, due to their number, I decided to implement this workaround.
-
-#ifndef _WIN32
-	// same as stock version, but an additional cast to (void*) is added.
-	#define hz_glib_static_mutex_get_mutex(mutex) \
-		( g_thread_use_default_impl ? ((GMutex*) ((void*)((mutex)->static_mutex.pad))) : \
-		g_static_mutex_get_mutex_impl_shortcut(&((mutex)->runtime_mutex)) )
-
-#else
-	// win32 has different definition of this macro, so default to stock version.
-	#define hz_glib_static_mutex_get_mutex(mutex) g_static_mutex_get_mutex(mutex)
-#endif
-
-
 #define hz_glib_static_mutex_lock(mutex) \
-	g_mutex_lock(hz_glib_static_mutex_get_mutex(mutex))
+	g_mutex_lock(g_static_mutex_get_mutex(mutex))
 
 #define hz_glib_static_mutex_trylock(mutex) \
-	g_mutex_trylock(hz_glib_static_mutex_get_mutex(mutex))
+	g_mutex_trylock(g_static_mutex_get_mutex(mutex))
 
 #define hz_glib_static_mutex_unlock(mutex) \
-	g_mutex_unlock(hz_glib_static_mutex_get_mutex(mutex))
+	g_mutex_unlock(g_static_mutex_get_mutex(mutex))