--- plugins/policy.c | 26 ++++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/plugins/policy.c b/plugins/policy.c index dac1b7a24..e156c0db2 100644 --- a/plugins/policy.c +++ b/plugins/policy.c @@ -635,17 +635,19 @@ static void service_cb(struct btd_service *service, struct btd_profile *profile = btd_service_get_profile(service); struct reconnect_data *reconnect; - if (g_str_equal(profile->remote_uuid, A2DP_SINK_UUID)) - sink_cb(service, old_state, new_state); - else if (g_str_equal(profile->remote_uuid, A2DP_SOURCE_UUID)) - source_cb(service, old_state, new_state); - else if (g_str_equal(profile->remote_uuid, AVRCP_REMOTE_UUID)) - controller_cb(service, old_state, new_state); - else if (g_str_equal(profile->remote_uuid, AVRCP_TARGET_UUID)) - target_cb(service, old_state, new_state); - else if (g_str_equal(profile->remote_uuid, HFP_HS_UUID) || - g_str_equal(profile->remote_uuid, HSP_HS_UUID)) - hs_cb(service, old_state, new_state); + if (profile->remote_uuid) { + if (g_str_equal(profile->remote_uuid, A2DP_SINK_UUID)) + sink_cb(service, old_state, new_state); + else if (g_str_equal(profile->remote_uuid, A2DP_SOURCE_UUID)) + source_cb(service, old_state, new_state); + else if (g_str_equal(profile->remote_uuid, AVRCP_REMOTE_UUID)) + controller_cb(service, old_state, new_state); + else if (g_str_equal(profile->remote_uuid, AVRCP_TARGET_UUID)) + target_cb(service, old_state, new_state); + else if (g_str_equal(profile->remote_uuid, HFP_HS_UUID) || + g_str_equal(profile->remote_uuid, HSP_HS_UUID)) + hs_cb(service, old_state, new_state); + } /* * Return if the reconnection feature is not enabled (all @@ -687,7 +689,7 @@ static void service_cb(struct btd_service *service, * be the first profile that's connected so we might have an * entry but with the reconnect flag set to false. */ - if (!reconnect->reconnect) + if (!reconnect->reconnect && profile->remote_uuid) reconnect->reconnect = reconnect_match(profile->remote_uuid); DBG("Added %s reconnect %u", profile->name, reconnect->reconnect); -- 2.28.0