return FALSE;
}
- if (cond & (G_IO_NVAL | G_IO_HUP | G_IO_ERR)) {
- BT_ERR("Error : GIOCondition %d, []", cond);;
+ if (cond & G_IO_NVAL) {
+ BT_ERR("Invalid channel");
+ return FALSE;
+ }
+
+ if (cond & (G_IO_HUP | G_IO_ERR)) {
+ BT_ERR("Error : GIOCondition %d", cond);
g_io_channel_shutdown(gio, TRUE, NULL);
g_io_channel_unref(gio);
BT_DBG("FD io write data received [%s]", write_data->address);
+ if (cond & G_IO_NVAL) {
+ BT_ERR("Invalid channel");
+ return FALSE;
+ }
+
+ if (cond & (G_IO_HUP | G_IO_ERR)) {
+ BT_ERR("Error : GIOCondition %d", cond);
+ g_io_channel_shutdown(gio, TRUE, NULL);
+ g_io_channel_unref(gio);
+
+ return FALSE;
+ }
+
if (cond & G_IO_IN) {
GIOStatus status = G_IO_STATUS_NORMAL;
GError *err = NULL;