# HG changeset patch # User Christian Hammond # Date 1052211232 0 # Node ID b1c430fbf9d52068e52177ec8616e8239e74db3a # Parent 1f901484599d77ca2cc0e65e8a9c91005a4f277c [gaim-migrate @ 5687] Message bodies without a trailing newline will now be parsed for key: value pairs without segfaults and buffer overruns. committer: Tailor Script diff -r 1f901484599d -r b1c430fbf9d5 src/protocols/msn/msg.c --- a/src/protocols/msn/msg.c Tue May 06 05:48:03 2003 +0000 +++ b/src/protocols/msn/msg.c Tue May 06 08:53:52 2003 +0000 @@ -25,7 +25,7 @@ #define GET_NEXT(tmp) \ while (*(tmp) && *(tmp) != ' ' && *(tmp) != '\r') \ (tmp)++; \ - *(tmp)++ = '\0'; \ + if (*(tmp) != '\0') *(tmp)++ = '\0'; \ if (*(tmp) == '\n') *(tmp)++; \ while (*(tmp) && *(tmp) == ' ') \ (tmp)++ @@ -33,7 +33,7 @@ #define GET_NEXT_LINE(tmp) \ while (*(tmp) && *(tmp) != '\r') \ (tmp)++; \ - *(tmp)++ = '\0'; \ + if (*(tmp) != '\0') *(tmp)++ = '\0'; \ if (*(tmp) == '\n') *(tmp)++ /* @@ -501,7 +501,7 @@ table = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, g_free); - while (*s != '\r') { + while (*s != '\r' && *s != '\0') { char *key, *value; key = s;