Pinned it down!
util.c, line 551:
int
cfg_getline(char *s, int n, FILE *f) {
register int i=0, c;
s[0] = '\0';
/* skip leading whitespace */
do {
c = getc(f);
} while (c == '\t' || c == ' ');
if(c == EOF)
return 1;
while(1) {
if((c == '\t') || (c == ' ')) {
s[i++] = ' '; <== (*)
while((c == '\t') || (c == ' '))
c = getc(f);
}
if(c == CR) {
c = getc(f);
}
if(c == EOF || c == 0x4 || c == LF || i == (n-1)) {
/* blast trailing whitespace */
while(i && (s[i-1] == ' ')) --i;
s[i] = '\0';
return 0;
}
s[i] = c;
++i;
c = getc(f);
}
}
This code doesn't know about the quoted string used by mod_log_config:
(*) above replaces tabs & multiple spaces with one space.
I'm thinking about a patch...
--Renaud