Re: [PATCH] Emit missing signal when data channel is reconnected.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

On Fri, Mar 25, 2011, Santiago Carot-Nemesio wrote:
> Reconnections of data channels should be indicated to others
> applications by using the appropriate signal.
> ---
>  health/hdp.c |   11 ++++++++++-
>  1 files changed, 10 insertions(+), 1 deletions(-)
> 
> diff --git a/health/hdp.c b/health/hdp.c
> index 3c2dce1..b06fe17 100644
> --- a/health/hdp.c
> +++ b/health/hdp.c
> @@ -510,14 +510,23 @@ static void hdp_mdl_reconn_cb(struct mcap_mdl *mdl, GError *err, gpointer data)
>  	}
>  
>  	fd = mcap_mdl_get_fd(dc_data->hdp_chann->mdl);
> -	if (fd < 0)
> +	if (fd < 0) {
>  		reply = g_dbus_create_error(dc_data->msg,
>  						ERROR_INTERFACE ".HealthError",
>  						"Cannot get file descriptor");
> +		g_dbus_send_message(dc_data->conn, reply);
> +		return;
> +	}
>  
>  	reply = g_dbus_create_reply(dc_data->msg, DBUS_TYPE_UNIX_FD, &fd,
>  							DBUS_TYPE_INVALID);
>  	g_dbus_send_message(dc_data->conn, reply);
> +
> +	g_dbus_emit_signal(dc_data->conn,
> +			device_get_path(dc_data->hdp_chann->dev->dev),
> +			HEALTH_DEVICE, "ChannelConnected",
> +			DBUS_TYPE_OBJECT_PATH,
> +			&dc_data->hdp_chann->path, DBUS_TYPE_INVALID);
>  }
>  
>  static void hdp_get_dcpsm_cb(uint16_t dcpsm, gpointer user_data, GError *err)

Looks like this patch is doing two things:

1. Fix the memory leak/missing g_dbus_send_message call for the return
value from g_dbus_create_error.

2. Add sending of the "ChannelConnected" signal.

Could you please split it into two separate patches?

Johan
--
To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Bluez Devel]     [Linux Wireless Networking]     [Linux Wireless Personal Area Networking]     [Linux ATH6KL]     [Linux USB Devel]     [Linux Media Drivers]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Big List of Linux Books]

  Powered by Linux