From 87c05653573b21ad2c7067a6b9a536c351c72ad8 Mon Sep 17 00:00:00 2001 From: Pierre Pronchery Date: Fri, 1 Mar 2013 04:23:33 +0100 Subject: [PATCH] Handle more errors --- src/modems/hayes.c | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/src/modems/hayes.c b/src/modems/hayes.c index e43eafd..70b1145 100644 --- a/src/modems/hayes.c +++ b/src/modems/hayes.c @@ -3682,12 +3682,23 @@ static void _on_code_connect(ModemPlugin * modem, char const * answer) return; } hayes->rd_ppp_channel = g_io_channel_unix_new(rfd); - g_io_channel_set_encoding(hayes->rd_ppp_channel, NULL, &error); + if(g_io_channel_set_encoding(hayes->rd_ppp_channel, NULL, &error) + != G_IO_STATUS_NORMAL) + { + hayes->helper->error(NULL, error->message, 1); + g_error_free(error); + error = NULL; + } g_io_channel_set_buffered(hayes->rd_ppp_channel, FALSE); hayes->rd_ppp_source = g_io_add_watch(hayes->rd_ppp_channel, G_IO_IN, _on_watch_can_read_ppp, modem); hayes->wr_ppp_channel = g_io_channel_unix_new(wfd); - g_io_channel_set_encoding(hayes->wr_ppp_channel, NULL, &error); + if(g_io_channel_set_encoding(hayes->wr_ppp_channel, NULL, &error) + != G_IO_STATUS_NORMAL) + { + hayes->helper->error(NULL, error->message, 1); + g_error_free(error); + } g_io_channel_set_buffered(hayes->wr_ppp_channel, FALSE); hayes->wr_ppp_source = 0; event->connection.connected = 1;