diff options
author | cvs2svn <cvs2svn@FreeBSD.org> | 2003-01-16 05:08:57 +0000 |
---|---|---|
committer | cvs2svn <cvs2svn@FreeBSD.org> | 2003-01-16 05:08:57 +0000 |
commit | df3e7e93b8317ece24fbe7d0c9e4aa1ebb0feca0 (patch) | |
tree | 1d9ecedb74d255866c8e1e5df9db0f2739a8ba66 /net-im/gaim/files/patch-src_protocols_yahoo_yahoo.c | |
parent | c31f9d6cf28e3aa831ff2390ee3ab6ea031dbc76 (diff) |
Notes
Diffstat (limited to 'net-im/gaim/files/patch-src_protocols_yahoo_yahoo.c')
-rw-r--r-- | net-im/gaim/files/patch-src_protocols_yahoo_yahoo.c | 49 |
1 files changed, 0 insertions, 49 deletions
diff --git a/net-im/gaim/files/patch-src_protocols_yahoo_yahoo.c b/net-im/gaim/files/patch-src_protocols_yahoo_yahoo.c deleted file mode 100644 index f538f5c4ba62..000000000000 --- a/net-im/gaim/files/patch-src_protocols_yahoo_yahoo.c +++ /dev/null @@ -1,49 +0,0 @@ -This patch fixes a segfault that can occur when a Yahoo user receives new -mail. This patch is from gaim CVS, and will be integrated in the next -release. - ---- src/protocols/yahoo/yahoo.c 2002/11/12 00:50:21 1.43.2.7 -+++ src/protocols/yahoo/yahoo.c 2002/11/23 18:50:47 1.43.2.8 -@@ -259,19 +259,20 @@ - pair->key = strtol(key, NULL, 10); - accept = x; /* if x is 0 there was no key, so don't accept it */ - -- if (accept) -+ if (len - pos + 1 <= 0) { -+ /* Truncated. Garbage or something. */ -+ accept = 0; -+ } -+ -+ if (accept) { - value = g_malloc(len - pos + 1); -- x = 0; -- while (pos + 1 < len) { -- if (data[pos] == 0xc0 && data[pos + 1] == 0x80) -- break; -- if (accept) -+ x = 0; -+ while (pos + 1 < len) { -+ if (data[pos] == 0xc0 && data[pos + 1] == 0x80) -+ break; - value[x++] = data[pos++]; -- } -- if (accept) -+ } - value[x] = 0; -- pos += 2; -- if (accept) { - pair->value = g_strdup(value); - g_free(value); - pkt->hash = g_slist_append(pkt->hash, pair); -@@ -279,6 +280,11 @@ - } else { - g_free(pair); - } -+ pos += 2; -+ -+ /* Skip over garbage we've noticed in the mail notifications */ -+ if (data[0] == '9' && data[pos] == 0x01) -+ pos++; - } - } - |