diff options
| -rw-r--r-- | audio/avdtp.c | 6 | ||||
| -rw-r--r-- | audio/control.c | 10 | ||||
| -rw-r--r-- | audio/gstavdtpsink.c | 3 | ||||
| -rw-r--r-- | audio/headset.c | 10 | ||||
| -rw-r--r-- | audio/main.c | 4 | ||||
| -rw-r--r-- | audio/manager.c | 6 | ||||
| -rw-r--r-- | common/glib-helper.c | 2 | ||||
| -rw-r--r-- | input/device.c | 12 | ||||
| -rw-r--r-- | input/server.c | 8 | ||||
| -rw-r--r-- | network/connection.c | 6 | ||||
| -rw-r--r-- | network/server.c | 2 | ||||
| -rw-r--r-- | serial/port.c | 4 | ||||
| -rw-r--r-- | serial/proxy.c | 2 | ||||
| -rw-r--r-- | src/device.c | 8 | ||||
| -rw-r--r-- | test/btiotest.c | 8 | 
15 files changed, 45 insertions, 46 deletions
| diff --git a/audio/avdtp.c b/audio/avdtp.c index bc021d6c..5c21b95e 100644 --- a/audio/avdtp.c +++ b/audio/avdtp.c @@ -1832,7 +1832,7 @@ static void avdtp_connect_cb(GIOChannel *chan, GError *err, gpointer user_data)  	if (!g_slist_find(sessions, session)) {  		debug("avdtp_connect_cb: session got removed"); -		g_io_channel_close(chan); +		g_io_channel_shutdown(chan, TRUE, NULL);  		return;  	} @@ -1996,7 +1996,7 @@ static void avdtp_confirm_cb(GIOChannel *chan, gpointer data)  	return;  drop: -	g_io_channel_close(chan); +	g_io_channel_shutdown(chan, TRUE, NULL);  }  static int l2cap_connect(struct avdtp *session) @@ -3181,7 +3181,7 @@ void avdtp_exit(const bdaddr_t *src)  	servers = g_slist_remove(servers, server); -	g_io_channel_close(server->io); +	g_io_channel_shutdown(server->io, TRUE, NULL);  	g_io_channel_unref(server->io);  	g_free(server);  } diff --git a/audio/control.c b/audio/control.c index 0986c015..efe9f987 100644 --- a/audio/control.c +++ b/audio/control.c @@ -679,7 +679,7 @@ static void avctp_server_cb(GIOChannel *chan, GError *err, gpointer data)  	if (gerr) {  		error("%s", gerr->message);  		g_error_free(gerr); -		g_io_channel_close(chan); +		g_io_channel_shutdown(chan, TRUE, NULL);  		return;  	} @@ -731,7 +731,7 @@ proceed:  	return;  drop: -	g_io_channel_close(chan); +	g_io_channel_shutdown(chan, TRUE, NULL);  	avctp_unref(session);  } @@ -766,7 +766,7 @@ static void avctp_connect_cb(GIOChannel *chan, GError *err, gpointer data)  	if (!session) {  		debug("avctp_connect_cb: session removed while connecting"); -		g_io_channel_close(chan); +		g_io_channel_shutdown(chan, TRUE, NULL);  		g_io_channel_unref(chan);  		return;  	} @@ -785,7 +785,7 @@ static void avctp_connect_cb(GIOChannel *chan, GError *err, gpointer data)  		avctp_unref(session);  		error("%s", gerr->message);  		g_error_free(gerr); -		g_io_channel_close(chan); +		g_io_channel_shutdown(chan, TRUE, NULL);  		return;  	} @@ -952,7 +952,7 @@ void avrcp_unregister(const bdaddr_t *src)  	remove_record_from_server(server->ct_record_id);  	remove_record_from_server(server->tg_record_id); -	g_io_channel_close(server->io); +	g_io_channel_shutdown(server->io, TRUE, NULL);  	g_io_channel_unref(server->io);  	g_free(server); diff --git a/audio/gstavdtpsink.c b/audio/gstavdtpsink.c index a5ac3bdd..586dfe14 100644 --- a/audio/gstavdtpsink.c +++ b/audio/gstavdtpsink.c @@ -144,8 +144,7 @@ static gboolean gst_avdtp_sink_stop(GstBaseSink *basesink)  	}  	if (self->stream) { -		g_io_channel_flush(self->stream, NULL); -		g_io_channel_close(self->stream); +		g_io_channel_shutdown(self->stream, TRUE, NULL);  		g_io_channel_unref(self->stream);  		self->stream = NULL;  	} diff --git a/audio/headset.c b/audio/headset.c index e923fd68..7ed1bb07 100644 --- a/audio/headset.c +++ b/audio/headset.c @@ -413,7 +413,7 @@ static void pending_connect_finalize(struct audio_device *dev)  	g_slist_free(p->callbacks);  	if (p->io) { -		g_io_channel_close(p->io); +		g_io_channel_shutdown(p->io, TRUE, NULL);  		g_io_channel_unref(p->io);  	} @@ -1130,7 +1130,7 @@ static void close_sco(struct audio_device *device)  	if (hs->sco) {  		g_source_remove(hs->sco_id);  		hs->sco_id = 0; -		g_io_channel_close(hs->sco); +		g_io_channel_shutdown(hs->sco, TRUE, NULL);  		g_io_channel_unref(hs->sco);  		hs->sco = NULL;  	} @@ -2024,12 +2024,12 @@ static void headset_free(struct audio_device *dev)  	}  	if (hs->sco) { -		g_io_channel_close(hs->sco); +		g_io_channel_shutdown(hs->sco, TRUE, NULL);  		g_io_channel_unref(hs->sco);  	}  	if (hs->rfcomm) { -		g_io_channel_close(hs->rfcomm); +		g_io_channel_shutdown(hs->rfcomm, TRUE, NULL);  		g_io_channel_unref(hs->rfcomm);  	} @@ -2341,7 +2341,7 @@ static int headset_close_rfcomm(struct audio_device *dev)  	GIOChannel *rfcomm = hs->tmp_rfcomm ? hs->tmp_rfcomm : hs->rfcomm;  	if (rfcomm) { -		g_io_channel_close(rfcomm); +		g_io_channel_shutdown(rfcomm, TRUE, NULL);  		g_io_channel_unref(rfcomm);  		hs->tmp_rfcomm = NULL;  		hs->rfcomm = NULL; diff --git a/audio/main.c b/audio/main.c index 0e5afc42..c3b5bb56 100644 --- a/audio/main.c +++ b/audio/main.c @@ -111,7 +111,7 @@ static void sco_server_cb(GIOChannel *chan, GError *err, gpointer data)  	return;  drop: -	g_io_channel_close(chan); +	g_io_channel_shutdown(chan, TRUE, NULL);  }  static DBusConnection *connection; @@ -150,7 +150,7 @@ static int audio_init(void)  static void audio_exit(void)  {  	if (sco_server) { -		g_io_channel_close(sco_server); +		g_io_channel_shutdown(sco_server, TRUE, NULL);  		g_io_channel_unref(sco_server);  		sco_server = NULL;  	} diff --git a/audio/manager.c b/audio/manager.c index d7ecfb40..77de2878 100644 --- a/audio/manager.c +++ b/audio/manager.c @@ -501,7 +501,7 @@ static void ag_confirm(GIOChannel *chan, gpointer data)  	return;  drop: -	g_io_channel_close(chan); +	g_io_channel_shutdown(chan, TRUE, NULL);  }  static void hs_io_cb(GIOChannel *chan, GError *err, void *data) @@ -592,13 +592,13 @@ failed:  	error("%s", err->message);  	g_error_free(err);  	if (adapter->hsp_ag_server) { -		g_io_channel_close(adapter->hsp_ag_server); +		g_io_channel_shutdown(adapter->hsp_ag_server, TRUE, NULL);  		g_io_channel_unref(adapter->hsp_ag_server);  		adapter->hsp_ag_server = NULL;  	}  	if (adapter->hfp_ag_server) { -		g_io_channel_close(adapter->hfp_ag_server); +		g_io_channel_shutdown(adapter->hfp_ag_server, TRUE, NULL);  		g_io_channel_unref(adapter->hfp_ag_server);  		adapter->hfp_ag_server = NULL;  	} diff --git a/common/glib-helper.c b/common/glib-helper.c index 29d72e56..e892a893 100644 --- a/common/glib-helper.c +++ b/common/glib-helper.c @@ -683,7 +683,7 @@ static gboolean hci_event_watch(GIOChannel *io,  failed:  	cmd->cb(status, cmd->caller_data); -	g_io_channel_close(io); +	g_io_channel_shutdown(io, TRUE, NULL);  	return FALSE;  } diff --git a/input/device.c b/input/device.c index 4ab7aabc..3c050187 100644 --- a/input/device.c +++ b/input/device.c @@ -354,7 +354,7 @@ static void rfcomm_connect_cb(GIOChannel *chan, GError *err, gpointer user_data)  	 */  	fake->uinput = uinput_create(idev->name);  	if (fake->uinput < 0) { -		g_io_channel_close(chan); +		g_io_channel_shutdown(chan, TRUE, NULL);  		reply = connection_attempt_failed(iconn->pending_connect,  							strerror(errno));  		goto failed; @@ -405,7 +405,7 @@ static gboolean intr_watch_cb(GIOChannel *chan, GIOCondition cond, gpointer data  	gboolean connected = FALSE;  	if (cond & (G_IO_HUP | G_IO_ERR)) -		g_io_channel_close(chan); +		g_io_channel_shutdown(chan, TRUE, NULL);  	emit_property_changed(idev->conn, idev->path, INPUT_DEVICE_INTERFACE,  				"Connected", DBUS_TYPE_BOOLEAN, &connected); @@ -429,7 +429,7 @@ static gboolean ctrl_watch_cb(GIOChannel *chan, GIOCondition cond, gpointer data  	struct input_conn *iconn = data;  	if (cond & (G_IO_HUP | G_IO_ERR)) -		g_io_channel_close(chan); +		g_io_channel_shutdown(chan, TRUE, NULL);  	g_source_remove(iconn->intr_watch);  	iconn->intr_watch = 0; @@ -687,7 +687,7 @@ static void interrupt_connect_cb(GIOChannel *chan, GError *conn_err,  	err = hidp_add_connection(idev, iconn);  	if (err < 0) {  		err_msg = strerror(-err); -		g_io_channel_close(chan); +		g_io_channel_shutdown(chan, TRUE, NULL);  		goto failed;  	} @@ -742,7 +742,7 @@ static void control_connect_cb(GIOChannel *chan, GError *conn_err,  		reply = connection_attempt_failed(iconn->pending_connect,  							err->message);  		g_error_free(err); -		g_io_channel_close(chan); +		g_io_channel_shutdown(chan, TRUE, NULL);  		goto failed;  	} @@ -766,7 +766,7 @@ static int fake_disconnect(struct input_conn *iconn)  	if (!fake->io)  		return -ENOTCONN; -	g_io_channel_close(fake->io); +	g_io_channel_shutdown(fake->io, TRUE, NULL);  	g_io_channel_unref(fake->io);  	fake->io = NULL; diff --git a/input/server.c b/input/server.c index 88db485c..9cb958df 100644 --- a/input/server.c +++ b/input/server.c @@ -106,7 +106,7 @@ static void connect_event_cb(GIOChannel *chan, GError *err, gpointer data)  	if (gerr) {  		error("%s", gerr->message);  		g_error_free(gerr); -		g_io_channel_close(chan); +		g_io_channel_shutdown(chan, TRUE, NULL);  		return;  	} @@ -121,7 +121,7 @@ static void connect_event_cb(GIOChannel *chan, GError *err, gpointer data)  			int err;  			err = write(sk, unplug, sizeof(unplug));  		} -		g_io_channel_close(chan); +		g_io_channel_shutdown(chan, TRUE, NULL);  		return;  	} @@ -179,10 +179,10 @@ void server_stop(const bdaddr_t *src)  	server = l->data; -	g_io_channel_close(server->intr); +	g_io_channel_shutdown(server->intr, TRUE, NULL);  	g_io_channel_unref(server->intr); -	g_io_channel_close(server->ctrl); +	g_io_channel_shutdown(server->ctrl, TRUE, NULL);  	g_io_channel_unref(server->ctrl);  	servers = g_slist_remove(servers, server); diff --git a/network/connection.c b/network/connection.c index fd91bd27..bc693aba 100644 --- a/network/connection.c +++ b/network/connection.c @@ -170,7 +170,7 @@ static gboolean bnep_watchdog_cb(GIOChannel *chan, GIOCondition cond,  	nc->state = DISCONNECTED;  	memset(nc->dev, 0, 16);  	strncpy(nc->dev, prefix, strlen(prefix)); -	g_io_channel_close(chan); +	g_io_channel_shutdown(chan, TRUE, NULL);  	return FALSE;  } @@ -275,7 +275,7 @@ failed:  		nc->state = DISCONNECTED;  		reply = connection_attempt_failed(nc->msg, strerror(EIO));  		g_dbus_send_message(connection, reply); -		g_io_channel_close(chan); +		g_io_channel_shutdown(chan, TRUE, NULL);  	}  	return FALSE; @@ -339,7 +339,7 @@ static void connect_cb(GIOChannel *chan, GError *err, gpointer data)  	if (perr < 0) {  		err_msg = strerror(-perr);  		error("bnep connect(): %s (%d)", err_msg, -perr); -		g_io_channel_close(chan); +		g_io_channel_shutdown(chan, TRUE, NULL);  		g_io_channel_unref(chan);  		goto failed;  	} diff --git a/network/server.c b/network/server.c index 7e3b03a7..01ab5ed7 100644 --- a/network/server.c +++ b/network/server.c @@ -795,7 +795,7 @@ static DBusMessage *set_property(DBusConnection *conn,  static void adapter_free(struct network_adapter *na)  {  	if (na->io != NULL) { -		g_io_channel_close(na->io); +		g_io_channel_shutdown(na->io, TRUE, NULL);  		g_io_channel_unref(na->io);  	} diff --git a/serial/port.c b/serial/port.c index ddb07b2c..4946e158 100644 --- a/serial/port.c +++ b/serial/port.c @@ -324,7 +324,7 @@ static void rfcomm_connect_cb(GIOChannel *chan, GError *conn_err,  		int err = errno;  		error("ioctl(RFCOMMCREATEDEV): %s (%d)", strerror(err), err);  		reply = failed(port->msg, strerror(err)); -		g_io_channel_close(chan); +		g_io_channel_shutdown(chan, TRUE, NULL);  		goto fail;  	} @@ -332,7 +332,7 @@ static void rfcomm_connect_cb(GIOChannel *chan, GError *conn_err,  	debug("Serial port %s created", port->dev); -	g_io_channel_close(chan); +	g_io_channel_shutdown(chan, TRUE, NULL);  	/* Addressing connect port */  	fd = port_open(port); diff --git a/serial/proxy.c b/serial/proxy.c index aab2e87d..3d21cc3b 100644 --- a/serial/proxy.c +++ b/serial/proxy.c @@ -265,7 +265,7 @@ static gboolean forward_data(GIOChannel *chan, GIOCondition cond, gpointer data)  			err = channel_write(dest, buf, rbytes);  		} while (err == G_IO_ERROR_NONE); -		g_io_channel_close(dest); +		g_io_channel_shutdown(dest, TRUE, NULL);  		return FALSE;  	} diff --git a/src/device.c b/src/device.c index 8e83000f..fe369502 100644 --- a/src/device.c +++ b/src/device.c @@ -1537,7 +1537,7 @@ static void bonding_request_free(struct bonding_req *bonding, gboolean close)  	if (bonding->io) {  		if (close) -			g_io_channel_close(bonding->io); +			g_io_channel_shutdown(bonding->io, TRUE, NULL);  		g_io_channel_unref(bonding->io);  	} @@ -1619,7 +1619,7 @@ static gboolean create_bonding_io_cb(GIOChannel *io, GIOCondition cond,  	int sk, dd, ret;  	if (!device->bonding) { -		g_io_channel_close(io); +		g_io_channel_shutdown(io, TRUE, NULL);  		return FALSE;  	} @@ -1723,7 +1723,7 @@ static gboolean create_bonding_io_cb(GIOChannel *io, GIOCondition cond,  	return FALSE;  failed: -	g_io_channel_close(io); +	g_io_channel_shutdown(io, TRUE, NULL);  cleanup:  	device->bonding->io_id = 0; @@ -1743,7 +1743,7 @@ static void create_bond_req_exit(DBusConnection *conn, void *user_data)  	if (device->bonding) {  		device->bonding->listener_id = 0; -		g_io_channel_close(device->bonding->io); +		g_io_channel_shutdown(device->bonding->io, TRUE, NULL);  		bonding_request_free(device->bonding, TRUE);  	}  } diff --git a/test/btiotest.c b/test/btiotest.c index 9f4a1031..ede8a452 100644 --- a/test/btiotest.c +++ b/test/btiotest.c @@ -89,7 +89,7 @@ static gboolean disconn_timeout(gpointer user_data)  	printf("Disconnecting\n"); -	g_io_channel_close(data->io); +	g_io_channel_shutdown(data->io, TRUE, NULL);  	return FALSE;  } @@ -130,7 +130,7 @@ static void connect_cb(GIOChannel *io, GError *err, gpointer user_data)  	}  	if (data->disconn == 0) { -		g_io_channel_close(io); +		g_io_channel_shutdown(io, TRUE, NULL);  		printf("Disconnected\n");  		return;  	} @@ -158,7 +158,7 @@ static gboolean confirm_timeout(gpointer user_data)  	if (data->reject >= 0) {  		printf("Rejecting connection\n"); -		g_io_channel_close(data->io); +		g_io_channel_shutdown(data->io, TRUE, NULL);  		return FALSE;  	} @@ -193,7 +193,7 @@ static void confirm_cb(GIOChannel *io, gpointer user_data)  	if (data->reject == 0) {  		printf("Rejecting connection\n"); -		g_io_channel_close(io); +		g_io_channel_shutdown(io, TRUE, NULL);  		return;  	} | 
