From: Don S. <ri...@us...> - 2005-02-09 18:49:21
|
Update of /cvsroot/gaim-bnet/gaim-bnet/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv19535 Modified Files: proto.c Log Message: Patch #1119481 from evew Index: proto.c =================================================================== RCS file: /cvsroot/gaim-bnet/gaim-bnet/src/proto.c,v retrieving revision 1.22 retrieving revision 1.23 diff -C2 -d -r1.22 -r1.23 *** proto.c 7 Feb 2005 15:35:11 -0000 1.22 --- proto.c 9 Feb 2005 18:49:12 -0000 1.23 *************** *** 92,96 **** GList *al = NULL; ! gboolean err = FALSE; for (w = msg, k = model; !err && *w && *k; w++, k++) { --- 92,96 ---- GList *al = NULL; ! gboolean err = FALSE, last = FALSE; for (w = msg, k = model; !err && *w && *k; w++, k++) { *************** *** 117,122 **** case 'x': ! if (!(p = strchr(k, '$'))) tt = strlen(k+1); else tt = p-k - 1; --- 117,124 ---- case 'x': ! if (!(p = strchr(k, '$'))) { tt = strlen(k+1); + last = TRUE; + } else tt = p-k - 1; *************** *** 125,134 **** p = (gchar *)(w + strlen(w)); else { ! char cmp_str[tt + 1]; ! strncpy(cmp_str, k+1, tt); ! cmp_str[tt] = '\0'; ! if (!(p = strstr(w, cmp_str))) { ! err = TRUE; ! break; } } --- 127,144 ---- p = (gchar *)(w + strlen(w)); else { ! if (last) { ! p = (gchar*)(w+strlen(w)-tt); ! if (memcmp(p, k+1, tt)) { ! err = TRUE; ! break; ! } ! } else { ! char cmp_str[tt + 1]; ! strncpy(cmp_str, k+1, tt); ! cmp_str[tt] = '\0'; ! if (!(p = strstr(w, cmp_str))) { ! err = TRUE; ! break; ! } } } |