[PATCH 2/3] hfp: Don't call UnregisterAgent if a Release was received

Denis Kenzior denkenz at gmail.com
Thu Feb 4 14:00:10 PST 2010


Hi Gustavo,

> Prevent to call UnregisterAgent on an already unregistered agent.
> ---
>  plugins/hfp.c |    9 ++++++++-
>  1 files changed, 8 insertions(+), 1 deletions(-)
> 
> diff --git a/plugins/hfp.c b/plugins/hfp.c
> index cd43af7..4202ddf 100644
> --- a/plugins/hfp.c
> +++ b/plugins/hfp.c
> @@ -760,8 +760,11 @@ static int hfp_probe(struct ofono_modem *modem)
>  static void hfp_remove(struct ofono_modem *modem)
>  {
>  	struct hfp_data *data = ofono_modem_get_data(modem);
> +	const char *obj_path = ofono_modem_get_path(modem);
> 
> -	hfp_unregister_ofono_handsfree(modem);
> +	if (g_dbus_unregister_interface(connection, obj_path,
> +					HFP_AGENT_INTERFACE))
> +		hfp_unregister_ofono_handsfree(modem);
> 
>  	g_hash_table_remove(uuid_hash, data->handsfree_path);
> 
> @@ -804,10 +807,14 @@ static int hfp_disconnect_ofono_handsfree(struct
>  ofono_modem *modem)
> 
>  static int hfp_disable(struct ofono_modem *modem)
>  {
> +	const char *obj_path = ofono_modem_get_path(modem);
> +
>  	DBG("%p", modem);
> 
>  	clear_data(modem);
> 
> +	g_dbus_unregister_interface(connection, obj_path, HFP_AGENT_INTERFACE);
> +

Shouldn't this part be in agent_release?

>  	hfp_disconnect_ofono_handsfree(modem);
>  	return 0;
>  }
> 

Regards,
-Denis


More information about the ofono mailing list