diff --git a/src/c/pathname.d b/src/c/pathname.d index 88343f20b..d8907f7cc 100644 --- a/src/c/pathname.d +++ b/src/c/pathname.d @@ -927,8 +927,10 @@ ecl_namestring(cl_object x, int truncate_if_unreadable) } NO_DIRECTORY: if (ecl_file_position(buffer) == MAKE_FIXNUM(0)) { - if (ecl_member_char(':', x->pathname.name) || - ecl_member_char(':', x->pathname.type)) + if ((ecl_stringp(x->pathname.name) && + ecl_member_char(':', x->pathname.name)) || + (ecl_stringp(x->pathname.type) && + ecl_member_char(':', x->pathname.type))) writestr_stream(":", buffer); } y = x->pathname.name; diff --git a/src/c/unixfsys.d b/src/c/unixfsys.d index abaa65e6f..f47255129 100644 --- a/src/c/unixfsys.d +++ b/src/c/unixfsys.d @@ -687,7 +687,7 @@ dir_files(cl_object basedir, cl_object pathname) char *text = new->base_string.self; if (file_kind(text, TRUE) == @':directory') continue; - if (ecl_member_char(':', new)) { + if (ecl_stringp(new) && ecl_member_char(':', new)) { /* File names are allowed to have ':', but ECL * interprets colons as separators for device names * By prepending the name with a ':', we set the device diff --git a/src/lsp/config.lsp.in b/src/lsp/config.lsp.in index 3355e2d18..4515ed5c6 100644 --- a/src/lsp/config.lsp.in +++ b/src/lsp/config.lsp.in @@ -24,7 +24,7 @@ Returns, as a string, the location of the machine on which ECL runs." (defun lisp-implementation-version () "Args:() Returns the version of your ECL as a string." - "@PACKAGE_VERSION@ (CVS 2008-04-06 18:01)") + "@PACKAGE_VERSION@ (CVS 2008-04-06 20:00)") (defun machine-type () "Args: ()