changeset 32771:a78523019e7a

IRC: Move the "inpa" input watcher into protocol_data.
author andrew.victor@mxit.com
date Tue, 18 Oct 2011 21:11:40 +0000
parents a5f50581b7c0
children 6135b24cdc8a
files libpurple/protocols/irc/irc.c libpurple/protocols/irc/irc.h
diffstat 2 files changed, 6 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/libpurple/protocols/irc/irc.c	Tue Oct 18 21:02:58 2011 +0000
+++ b/libpurple/protocols/irc/irc.c	Tue Oct 18 21:11:40 2011 +0000
@@ -500,7 +500,7 @@
 	irc->fd = source;
 
 	if (do_login(gc)) {
-		gc->inpa = purple_input_add(irc->fd, PURPLE_INPUT_READ, irc_input_cb, gc);
+		irc->inpa = purple_input_add(irc->fd, PURPLE_INPUT_READ, irc_input_cb, gc);
 	}
 }
 
@@ -526,8 +526,10 @@
 	if (irc->gsc || (irc->fd >= 0))
 		irc_cmd_quit(irc, "quit", NULL, NULL);
 
-	if (gc->inpa)
-		purple_input_remove(gc->inpa);
+	if (irc->inpa) {
+		purple_input_remove(irc->inpa);
+		irc->inpa = 0;
+	}
 
 	g_free(irc->inbuf);
 	if (irc->gsc) {
--- a/libpurple/protocols/irc/irc.h	Tue Oct 18 21:02:58 2011 +0000
+++ b/libpurple/protocols/irc/irc.h	Tue Oct 18 21:11:40 2011 +0000
@@ -54,6 +54,7 @@
 	GHashTable *cmds;
 	char *server;
 	int fd;
+	guint inpa;
 	guint timer;
 	guint who_channel_timer;
 	GHashTable *buddies;