Index: src/cache_cf.c =================================================================== RCS file: /cvsroot/squid/squid/src/cache_cf.c,v retrieving revision 1.396.2.32 diff -u -p -r1.396.2.32 cache_cf.c --- src/cache_cf.c 26 Oct 2005 20:25:42 -0000 1.396.2.32 +++ src/cache_cf.c 2 Mar 2006 23:17:21 -0000 @@ -600,21 +600,25 @@ parseBytesUnits(const char *unit) static void dump_acl(StoreEntry * entry, const char *name, acl * ae) { - wordlist *w; - wordlist *v; while (ae != NULL) { debug(3, 3) ("dump_acl: %s %s\n", name, ae->name); - v = w = aclDumpGeneric(ae); - while (v != NULL) { - debug(3, 3) ("dump_acl: %s %s %s\n", name, ae->name, v->key); - storeAppendPrintf(entry, "%s %s %s %s\n", - name, - ae->name, - aclTypeToStr(ae->type), - v->key); - v = v->next; + if (strstr(ae->cfgline, " \"")) + storeAppendPrintf(entry, "%s\n", ae->cfgline); + else { + wordlist *w; + wordlist *v; + v = w = aclDumpGeneric(ae); + while (v != NULL) { + debug(3, 3) ("dump_acl: %s %s %s\n", name, ae->name, v->key); + storeAppendPrintf(entry, "%s %s %s %s\n", + name, + ae->name, + aclTypeToStr(ae->type), + v->key); + v = v->next; + } + wordlistDestroy(&w); } - wordlistDestroy(&w); ae = ae->next; } }