]> code.delx.au - pulseaudio/commitdiff
stream-restore: At startup, create dbus entries only for valid database entries.
authorTanu Kaskinen <ext-tanu.kaskinen@nokia.com>
Thu, 3 Dec 2009 13:34:26 +0000 (15:34 +0200)
committerColin Guthrie <cguthrie@mandriva.org>
Thu, 3 Dec 2009 21:50:20 +0000 (21:50 +0000)
src/modules/module-stream-restore.c

index a1273fe9efab3470723b5b1faf0d2b74f5b20419..becdb54a241bab57661364c08c18012958690c36 100644 (file)
@@ -2044,14 +2044,19 @@ int pa__init(pa_module*m) {
         pa_datum next_key;
         char *name;
         struct dbus_entry *de;
+        struct entry *e;
 
         done = !pa_database_next(u->database, &key, &next_key, NULL);
 
         name = pa_xstrndup(key.data, key.size);
         pa_datum_free(&key);
 
-        de = dbus_entry_new(u, name);
-        pa_assert_se(pa_hashmap_put(u->dbus_entries, de->entry_name, de) == 0);
+        /* Use read_entry() for checking that the entry is valid. */
+        if ((e = read_entry(u, name))) {
+            de = dbus_entry_new(u, name);
+            pa_assert_se(pa_hashmap_put(u->dbus_entries, de->entry_name, de) == 0);
+            pa_xfree(e);
+        }
 
         pa_xfree(name);