On Thu, 2012-12-06 at 06:51 +0200, Tanu Kaskinen wrote: > --- > src/modules/bluetooth/bluetooth-util.c | 7 ++++++- > 1 file changed, 6 insertions(+), 1 deletion(-) > > diff --git a/src/modules/bluetooth/bluetooth-util.c b/src/modules/bluetooth/bluetooth-util.c > index 0daf1c9..39c5c5e 100644 > --- a/src/modules/bluetooth/bluetooth-util.c > +++ b/src/modules/bluetooth/bluetooth-util.c > @@ -1178,6 +1178,11 @@ static DBusMessage *endpoint_set_configuration(DBusConnection *conn, DBusMessage > if (!d) > goto fail; > > + if (pa_hashmap_get(d->transports, path)) { > + pa_log("org.bluez.MediaEndpoint.SetConfiguration: Device %s already has transport %s.", d->path, path); > + goto fail; > + } > + > if (dbus_message_has_path(m, HFP_AG_ENDPOINT)) > p = PROFILE_HSP; > else if (dbus_message_has_path(m, HFP_HS_ENDPOINT)) > @@ -1192,7 +1197,7 @@ static DBusMessage *endpoint_set_configuration(DBusConnection *conn, DBusMessage > t = transport_new(d, sender, path, p, config, size); > if (nrec) > t->nrec = nrec; > - pa_hashmap_put(d->transports, t->path, t); > + pa_assert_se(pa_hashmap_put(d->transports, t->path, t) >= 0); > > pa_log_debug("Transport %s profile %d available", t->path, t->profile); > This is pretty trivial, so I decided to push this to my next branch without review (there are some changes due to rebasing on the latest patches from Mikel). -- Tanu