]> code.delx.au - pulseaudio/commitdiff
reserve: update from upstream git repo
authorLennart Poettering <lennart@poettering.net>
Wed, 1 Jul 2009 18:20:36 +0000 (20:20 +0200)
committerLennart Poettering <lennart@poettering.net>
Wed, 1 Jul 2009 18:20:36 +0000 (20:20 +0200)
src/modules/reserve-monitor.c
src/modules/reserve-monitor.h
src/modules/reserve.c
src/modules/reserve.h

index 64d2a7cc4e575310a488f70e12070ecf045c0f12..13ecde2b0fdcfdc29055c661d29420b49d31b309 100644 (file)
@@ -1,3 +1,5 @@
+/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: t -*-*/
+
 /***
   Copyright 2009 Lennart Poettering
 
@@ -76,9 +78,17 @@ static DBusHandlerResult filter_handler(
                        goto invalid;
 
                if (strcmp(name, m->service_name) == 0) {
-
                        m->busy = !!(new && *new);
 
+                       /* If we ourselves own the device, then don't consider this 'busy' */
+                       if (m->busy) {
+                               const char *un;
+
+                               if ((un = dbus_bus_get_unique_name(c)))
+                                       if (strcmp(new, un) == 0)
+                                               m->busy = FALSE;
+                       }
+
                        if (m->change_cb) {
                                m->ref++;
                                m->change_cb(m);
index 4f4a83321092d860edc6b4e7f0ee24ab88105cf3..421a52e0b857f7d0ddd2a572f51ba60f9f2d0fac 100644 (file)
@@ -1,3 +1,5 @@
+/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: t -*-*/
+
 #ifndef fooreservemonitorhfoo
 #define fooreservemonitorhfoo
 
 #include <dbus/dbus.h>
 #include <inttypes.h>
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 typedef struct rm_monitor rm_monitor;
 
 /* Prototype for a function that is called whenever the reservation
@@ -59,4 +65,8 @@ void rm_set_userdata(rm_monitor *m, void *userdata);
  * userdata was set. */
 void* rm_get_userdata(rm_monitor *m);
 
+#ifdef __cplusplus
+}
+#endif
+
 #endif
index 09bc46cba0ce3de9b91f3773766ddb8e61d6cca4..5597f177df359e662dd530b1c70ebaa715141a99 100644 (file)
@@ -1,3 +1,5 @@
+/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: t -*-*/
+
 /***
   Copyright 2009 Lennart Poettering
 
index 31071298cdc62a56e9e861384df271d3a7c65142..9ae49cf56354fd9e44db59f32a2cb4bde7e0cc51 100644 (file)
@@ -1,3 +1,5 @@
+/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: t -*-*/
+
 #ifndef fooreservehfoo
 #define fooreservehfoo
 
 #include <dbus/dbus.h>
 #include <inttypes.h>
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 typedef struct rd_device rd_device;
 
 /* Prototype for a function that is called whenever someone else wants
@@ -66,4 +72,8 @@ void rd_set_userdata(rd_device *d, void *userdata);
  * userdata was set. */
 void* rd_get_userdata(rd_device *d);
 
+#ifdef __cplusplus
+}
+#endif
+
 #endif