stream-restore: At startup, create dbus entries only for valid database entries.

This commit is contained in:
Tanu Kaskinen 2009-12-03 15:34:26 +02:00 committed by Colin Guthrie
parent 00debf4243
commit f42022a7d3

View file

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