When a client app is registered with g_dbus_client_new(), bluez root path, i.e. "/", is used as the app root path and signal watches are added at that root path. Because of this, InterfacesAdded/InterfacesRemoved signals emitted by app - while creating/removing advertisement monitor objects at the app root path - are not received by bluetoothd. Use g_dbus_client_new_full() to register a client app with the correct app root path. Signed-off-by: Manish Mandlik <mmandlik@xxxxxxxxxx> Reviewed-by: sonnysasaka@xxxxxxxxxxxx Reviewed-by: howardchung@xxxxxxxxxx Reviewed-by: mcchou@xxxxxxxxxxxx --- Changes in v2: - updated the commit message and title src/adv_monitor.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/adv_monitor.c b/src/adv_monitor.c index fc058dbf1..a5bc61c48 100644 --- a/src/adv_monitor.c +++ b/src/adv_monitor.c @@ -775,7 +775,7 @@ static struct adv_monitor_app *app_create(DBusConnection *conn, app->manager = manager; app->reg = NULL; - app->client = g_dbus_client_new(conn, sender, path); + app->client = g_dbus_client_new_full(conn, sender, path, path); if (!app->client) { app_destroy(app); return NULL; -- 2.29.2.454.gaff20da3a2-goog