--- squid-2.2.DEVEL3/src/errorpage.c Fri Jan 29 21:01:06 1999 +++ squid-2.2.DEVEL3-PR/src/errorpage.c Fri Mar 5 21:34:36 1999 @@ -586,16 +595,20 @@ const char *m; const char *p; const char *t; + const char *am; assert(err != NULL); assert(err->page_id > ERR_NONE && err->page_id < error_page_count); memBufDefInit(&content); m = error_text[err->page_id]; assert(m); - while ((p = strchr(m, '%'))) { + for ( am = m; (p = strchr(am, '%')) ; ) { + if( isalpha(*( p + 1 )) ) { memBufAppend(&content, m, p - m); /* copy */ t = errorConvert(*++p, err); /* convert */ memBufPrintf(&content, "%s", t); /* copy */ - m = p + 1; /* advance */ + am = m = p + 1; /* advance */ + } else + am = p + 1; } if (*m) memBufPrintf(&content, "%s", m); /* copy tail */