# HG changeset patch # User Richard M. Stallman # Date 844403169 0 # Node ID 497b37552adb8df613982b27d4a31fbe73a24c1c # Parent 509a48e81eaa88b87dd346976783a1d491fbaa7e (openp): Omit /: from start of file name. diff -r 509a48e81eaa -r 497b37552adb src/lread.c --- a/src/lread.c Fri Oct 04 01:58:52 1996 +0000 +++ b/src/lread.c Fri Oct 04 04:26:09 1996 +0000 @@ -635,9 +635,22 @@ char *esuffix = (char *) index (nsuffix, ':'); int lsuffix = esuffix ? esuffix - nsuffix : strlen (nsuffix); - /* Concatenate path element/specified name with the suffix. */ - strncpy (fn, XSTRING (filename)->data, XSTRING (filename)->size); - fn[XSTRING (filename)->size] = 0; + /* Concatenate path element/specified name with the suffix. + If the directory starts with /:, remove that. */ + if (XSTRING (filename)->size > 2 + && XSTRING (filename)->data[0] == '/' + && XSTRING (filename)->data[1] == ':') + { + strncpy (fn, XSTRING (filename)->data + 2, + XSTRING (filename)->size - 2); + fn[XSTRING (filename)->size - 2] = 0; + } + else + { + strncpy (fn, XSTRING (filename)->data, XSTRING (filename)->size); + fn[XSTRING (filename)->size] = 0; + } + if (lsuffix != 0) /* Bug happens on CCI if lsuffix is 0. */ strncat (fn, nsuffix, lsuffix);