gatchat: Check for disconnection when resuming
authorDenis Kenzior <denkenz@gmail.com>
Tue, 8 Jun 2010 00:32:26 +0000 (19:32 -0500)
committerDenis Kenzior <denkenz@gmail.com>
Tue, 8 Jun 2010 00:32:26 +0000 (19:32 -0500)
If the internal GAtIO is no longer valid, treat it as if our channel was
disconnected.

gatchat/gatchat.c

index 9456f00..f192a90 100644 (file)
@@ -913,6 +913,11 @@ void g_at_chat_resume(GAtChat *chat)
 
        chat->suspended = FALSE;
 
+       if (g_at_io_get_channel(chat->io) == NULL) {
+               io_disconnect(chat);
+               return;
+       }
+
        g_at_io_set_disconnect_function(chat->io, io_disconnect, chat);
 
        g_at_io_set_debug(chat->io, chat->debugf, chat->debug_data);