diff mbox series

[BlueZ] media: Fix UnregisterApplication

Message ID 20210623224539.3738085-1-luiz.dentz@gmail.com (mailing list archive)
State Accepted
Delegated to: Luiz Von Dentz
Headers show
Series [BlueZ] media: Fix UnregisterApplication | expand

Commit Message

Luiz Augusto von Dentz June 23, 2021, 10:45 p.m. UTC
From: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>

UnregisterApplication is not doing anything since the apps queue is
never initialized which results in not finding any application when
unregistering.

Fixes: https://github.com/bluez/bluez/issues/126
---
 profiles/audio/media.c | 3 +++
 1 file changed, 3 insertions(+)

Comments

Luiz Augusto von Dentz June 24, 2021, 8:13 p.m. UTC | #1
Hi,

On Wed, Jun 23, 2021 at 3:45 PM Luiz Augusto von Dentz
<luiz.dentz@gmail.com> wrote:
>
> From: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
>
> UnregisterApplication is not doing anything since the apps queue is
> never initialized which results in not finding any application when
> unregistering.
>
> Fixes: https://github.com/bluez/bluez/issues/126
> ---
>  profiles/audio/media.c | 3 +++
>  1 file changed, 3 insertions(+)
>
> diff --git a/profiles/audio/media.c b/profiles/audio/media.c
> index c84bbe22d..267722542 100644
> --- a/profiles/audio/media.c
> +++ b/profiles/audio/media.c
> @@ -2384,6 +2384,8 @@ static void path_free(void *data)
>  {
>         struct media_adapter *adapter = data;
>
> +       queue_destroy(adapter->apps, app_free);
> +
>         while (adapter->endpoints)
>                 release_endpoint(adapter->endpoints->data);
>
> @@ -2402,6 +2404,7 @@ int media_register(struct btd_adapter *btd_adapter)
>
>         adapter = g_new0(struct media_adapter, 1);
>         adapter->btd_adapter = btd_adapter_ref(btd_adapter);
> +       adapter->apps = queue_new();
>
>         if (!g_dbus_register_interface(btd_get_dbus_connection(),
>                                         adapter_get_path(btd_adapter),
> --
> 2.31.1

Pushed.
diff mbox series

Patch

diff --git a/profiles/audio/media.c b/profiles/audio/media.c
index c84bbe22d..267722542 100644
--- a/profiles/audio/media.c
+++ b/profiles/audio/media.c
@@ -2384,6 +2384,8 @@  static void path_free(void *data)
 {
 	struct media_adapter *adapter = data;
 
+	queue_destroy(adapter->apps, app_free);
+
 	while (adapter->endpoints)
 		release_endpoint(adapter->endpoints->data);
 
@@ -2402,6 +2404,7 @@  int media_register(struct btd_adapter *btd_adapter)
 
 	adapter = g_new0(struct media_adapter, 1);
 	adapter->btd_adapter = btd_adapter_ref(btd_adapter);
+	adapter->apps = queue_new();
 
 	if (!g_dbus_register_interface(btd_get_dbus_connection(),
 					adapter_get_path(btd_adapter),