From: Michael Albinus Date: Fri, 7 Nov 2014 14:45:34 +0000 (+0100) Subject: * callproc.c (encode_current_directory): Support handling of file X-Git-Tag: emacs-24.4.90~257 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=5282dec1ecab229a8296887c15db949c90ad13ad;p=emacs.git * callproc.c (encode_current_directory): Support handling of file names prepended by "/:". Fixes: debbugs:18891 --- diff --git a/src/ChangeLog b/src/ChangeLog index a812fd4a771..81e2a27c200 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,8 @@ +2014-11-07 Michael Albinus + + * callproc.c (encode_current_directory): Support handling of file + names prepended by "/:". (Bug#18891) + 2014-11-06 Alan Mackenzie * syntax.c (back_comment): Fix off-by-one error (bug#18022). diff --git a/src/callproc.c b/src/callproc.c index 7ba3e398b41..488fae3644e 100644 --- a/src/callproc.c +++ b/src/callproc.c @@ -152,10 +152,14 @@ encode_current_directory (void) if (STRING_MULTIBYTE (dir)) dir = ENCODE_FILE (dir); - if (! file_accessible_directory_p (SSDATA (dir))) + if (NILP (Ffile_accessible_directory_p (dir))) report_file_error ("Setting current directory", BVAR (current_buffer, directory)); + /* Remove "/:" from dir. */ + if (Fstring_match (build_string ("^/:"), dir, Qnil)) + dir = Fsubstring (dir, make_number (2), Qnil); + RETURN_UNGCPRO (dir); }