mirror of
https://gitlab.freedesktop.org/pulseaudio/pulseaudio.git
synced 2025-11-05 13:29:57 -05:00
dbus: Give NULL as the error parameter to dbus_bus_remove_match().
We didn't do anything anyway in case of failures. When we give NULL as the error, dbus_bus_remove_match() can act asynchronously, so it becomes faster. Also, the bus daemon can avoid sending any replies, which reduces the amount of traffic.
This commit is contained in:
parent
6450ac2e6a
commit
7e4eef2179
2 changed files with 6 additions and 16 deletions
|
|
@ -344,7 +344,7 @@ static int add_matches(struct userdata *u, pa_bool_t add) {
|
||||||
goto finish;
|
goto finish;
|
||||||
}
|
}
|
||||||
} else
|
} else
|
||||||
dbus_bus_remove_match(pa_dbus_connection_get(u->dbus_connection), filter1, &e);
|
dbus_bus_remove_match(pa_dbus_connection_get(u->dbus_connection), filter1, NULL);
|
||||||
|
|
||||||
|
|
||||||
if (add) {
|
if (add) {
|
||||||
|
|
@ -352,11 +352,11 @@ static int add_matches(struct userdata *u, pa_bool_t add) {
|
||||||
|
|
||||||
if (dbus_error_is_set(&e)) {
|
if (dbus_error_is_set(&e)) {
|
||||||
pa_log("dbus_bus_add_match(%s) failed: %s", filter2, e.message);
|
pa_log("dbus_bus_add_match(%s) failed: %s", filter2, e.message);
|
||||||
dbus_bus_remove_match(pa_dbus_connection_get(u->dbus_connection), filter2, &e);
|
dbus_bus_remove_match(pa_dbus_connection_get(u->dbus_connection), filter2, NULL);
|
||||||
goto finish;
|
goto finish;
|
||||||
}
|
}
|
||||||
} else
|
} else
|
||||||
dbus_bus_remove_match(pa_dbus_connection_get(u->dbus_connection), filter2, &e);
|
dbus_bus_remove_match(pa_dbus_connection_get(u->dbus_connection), filter2, NULL);
|
||||||
|
|
||||||
if (add) {
|
if (add) {
|
||||||
pa_assert_se(dbus_connection_add_filter(pa_dbus_connection_get(u->dbus_connection), filter_func, u, NULL));
|
pa_assert_se(dbus_connection_add_filter(pa_dbus_connection_get(u->dbus_connection), filter_func, u, NULL));
|
||||||
|
|
|
||||||
|
|
@ -367,13 +367,8 @@ fail:
|
||||||
va_end(ap);
|
va_end(ap);
|
||||||
va_start(ap, error);
|
va_start(ap, error);
|
||||||
for (; k > 0; k--) {
|
for (; k > 0; k--) {
|
||||||
DBusError e;
|
|
||||||
|
|
||||||
pa_assert_se(t = va_arg(ap, const char*));
|
pa_assert_se(t = va_arg(ap, const char*));
|
||||||
|
dbus_bus_remove_match(c, t, NULL);
|
||||||
dbus_error_init(&e);
|
|
||||||
dbus_bus_remove_match(c, t, &e);
|
|
||||||
dbus_error_free(&e);
|
|
||||||
}
|
}
|
||||||
va_end(ap);
|
va_end(ap);
|
||||||
|
|
||||||
|
|
@ -383,17 +378,12 @@ fail:
|
||||||
void pa_dbus_remove_matches(DBusConnection *c, ...) {
|
void pa_dbus_remove_matches(DBusConnection *c, ...) {
|
||||||
const char *t;
|
const char *t;
|
||||||
va_list ap;
|
va_list ap;
|
||||||
DBusError error;
|
|
||||||
|
|
||||||
pa_assert(c);
|
pa_assert(c);
|
||||||
|
|
||||||
dbus_error_init(&error);
|
|
||||||
|
|
||||||
va_start(ap, c);
|
va_start(ap, c);
|
||||||
while ((t = va_arg(ap, const char*))) {
|
while ((t = va_arg(ap, const char*)))
|
||||||
dbus_bus_remove_match(c, t, &error);
|
dbus_bus_remove_match(c, t, NULL);
|
||||||
dbus_error_free(&error);
|
|
||||||
}
|
|
||||||
va_end(ap);
|
va_end(ap);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue