diff options
| -rw-r--r-- | protocols/jabber/jabber.c | 2 | ||||
| -rw-r--r-- | protocols/oscar/oscar.c | 1 | 
2 files changed, 2 insertions, 1 deletions
| diff --git a/protocols/jabber/jabber.c b/protocols/jabber/jabber.c index d4b5bde5..ba652b8a 100644 --- a/protocols/jabber/jabber.c +++ b/protocols/jabber/jabber.c @@ -412,7 +412,7 @@ static void gjab_recv(gjconn gjc)  		XML_Parse(gjc->parser, buf, len, 0);  		if (jd->die)  			signoff(GJ_GC(gjc)); -	} else if (len < 0 || errno != EAGAIN) { +	} else if (len == 0 || (len < 0 && (!sockerr_again() || gjc->ssl))) {  		STATE_EVT(JCONN_STATE_OFF)  	}  } diff --git a/protocols/oscar/oscar.c b/protocols/oscar/oscar.c index b4bfb220..4e552bce 100644 --- a/protocols/oscar/oscar.c +++ b/protocols/oscar/oscar.c @@ -607,6 +607,7 @@ static void damn_you(gpointer data, gint source, GaimInputCondition c)  		g_free(pos);  		return;  	} +	/* [WvG] Wheeeee! Who needs error checking anyway? ;-) */  	read(pos->fd, m, 16);  	m[16] = '\0';  	gaim_input_remove(pos->inpa); | 
