Reporter: Warren Jones Tue Mar 26 17:28:31 1996 Attempting to replace part of a file pathname with a null string causes SWISH to dump core. For example: ReplaceRules replace "/www/docs" "" As a workaround, I did this instead: ReplaceRules replace "/www/docs/" "/" The problem is that the null string is completely discarded at file.c line 277, leaving the "replace" directive with only one parameter: if (!skiplen | value[0] == '\0' || value[0] == '\n') break; ^^^^^^^^^^^^^^^^ This eventually leads to a seg fault when you try to dereference the (nonexistent) second parameter at line 988 of index.c: strcpy(line2, tmplist->line); /* tmplist == NULL */ An incidental quibble -- Did you really want to say: !skiplen | value[0] == '\0' ... rather than: !skiplen || value[0] == '\0' ... I think the two are equivalent in this context, but I scratched my head over the bitwise "|" before I decided it was probably OK.