mirror of
git://git.sv.gnu.org/emacs.git
synced 2026-03-03 12:31:32 -08:00
Fix bug #13661 with w32-downcase-file-names and shell-command.
src/callproc.c (Fcall_process_region): Make sure the XXXXXX part of the temporary file pattern is not downcased even when w32-downcase-file-names is non-nil.
This commit is contained in:
parent
2d0504232e
commit
74ba158362
2 changed files with 24 additions and 2 deletions
|
|
@ -1,5 +1,9 @@
|
|||
2013-02-09 Eli Zaretskii <eliz@gnu.org>
|
||||
|
||||
* callproc.c (Fcall_process_region): Make sure the XXXXXX part of
|
||||
the temporary file pattern is not downcased even when
|
||||
w32-downcase-file-names is non-nil. (Bug#13661)
|
||||
|
||||
* xdisp.c (decode_mode_spec): Remove handling of %t.
|
||||
|
||||
* msdos.c (careadlinkatcwd): Remove.
|
||||
|
|
|
|||
|
|
@ -1016,8 +1016,26 @@ usage: (call-process-region START END PROGRAM &optional DELETE BUFFER DISPLAY &r
|
|||
{
|
||||
USE_SAFE_ALLOCA;
|
||||
Lisp_Object pattern = Fexpand_file_name (Vtemp_file_name_pattern, tmpdir);
|
||||
Lisp_Object encoded_tem = ENCODE_FILE (pattern);
|
||||
char *tempfile = SAFE_ALLOCA (SBYTES (encoded_tem) + 1);
|
||||
Lisp_Object encoded_tem;
|
||||
char *tempfile;
|
||||
|
||||
#ifdef WINDOWSNT
|
||||
/* Cannot use the result of Fexpand_file_name, because it
|
||||
downcases the XXXXXX part of the pattern, and mktemp then
|
||||
doesn't recognize it. */
|
||||
if (!NILP (Vw32_downcase_file_names))
|
||||
{
|
||||
Lisp_Object dirname = Ffile_name_directory (pattern);
|
||||
|
||||
if (NILP (dirname))
|
||||
pattern = Vtemp_file_name_pattern;
|
||||
else
|
||||
pattern = concat2 (dirname, Vtemp_file_name_pattern);
|
||||
}
|
||||
#endif
|
||||
|
||||
encoded_tem = ENCODE_FILE (pattern);
|
||||
tempfile = SAFE_ALLOCA (SBYTES (encoded_tem) + 1);
|
||||
memcpy (tempfile, SDATA (encoded_tem), SBYTES (encoded_tem) + 1);
|
||||
coding_systems = Qt;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue