[maemo-commits] [maemo-commits] r12752 - projects/haf/trunk/libosso/src

From: subversion at stage.maemo.org subversion at stage.maemo.org
Date: Tue Jul 17 10:14:20 EEST 2007
Author: kihamala
Date: 2007-07-17 10:14:18 +0300 (Tue, 17 Jul 2007)
New Revision: 12752

Modified:
   projects/haf/trunk/libosso/src/osso-init.c
   projects/haf/trunk/libosso/src/osso-internal.h
Log:
made a macro for the locking


Modified: projects/haf/trunk/libosso/src/osso-init.c
===================================================================
--- projects/haf/trunk/libosso/src/osso-init.c	2007-07-17 07:02:05 UTC (rev 12751)
+++ projects/haf/trunk/libosso/src/osso-init.c	2007-07-17 07:14:18 UTC (rev 12752)
@@ -415,10 +415,7 @@
 	return;
     }
 
-    if (pthread_mutex_lock(&osso->mutex) == EDEADLK) {
-        ULOG_ERR_F("mutex deadlock detected");
-        return;
-    }
+    LOCK_OR_RETURN(osso->mutex, ());
 
     if (osso->uniq_hash != NULL) {
         g_hash_table_destroy(osso->uniq_hash);

Modified: projects/haf/trunk/libosso/src/osso-internal.h
===================================================================
--- projects/haf/trunk/libosso/src/osso-internal.h	2007-07-17 07:02:05 UTC (rev 12751)
+++ projects/haf/trunk/libosso/src/osso-internal.h	2007-07-17 07:14:18 UTC (rev 12752)
@@ -82,6 +82,14 @@
 #define MUALI_MAX_ARGS 256
 #define MUALI_MAX_MATCH_SIZE 256
 
+#define LOCK_OR_RETURN(V, R) \
+    if (pthread_mutex_lock(&V) == EDEADLK) { \
+        ULOG_ERR_F("mutex deadlock detected"); \
+        g_critical("mutex deadlock detected"); \
+        return R; \
+    }
+
+
 typedef struct {
     osso_hw_cb_f *cb;
     gpointer data;


More information about the maemo-commits mailing list