--- a/libpurple/protocols/irc/parse.c Sun Oct 20 16:44:19 2013 +0530 +++ b/libpurple/protocols/irc/parse.c Sun Oct 20 18:19:34 2013 +0530 @@ -397,7 +397,7 @@ do { end = strpbrk(cur, "\002\003\007\017\026\037"); - decoded = g_string_append_len(decoded, cur, (end ? (goffset)(end - cur) : strlen(cur))); + decoded = g_string_append_len(decoded, cur, (end ? (gssize)(end - cur) : (gssize)strlen(cur))); cur = end ? end : cur + strlen(cur); switch (*cur) {