Commit ced78c5a authored by Eli Zaretskii's avatar Eli Zaretskii
Browse files

Fix open-dribble-file's treatment of non-ASCII file names.

 src/keyboard.c (Fopen_dribble_file): Encode the dribble file-name
 before passing it to system APIs.
parent f2d164a4
2014-04-13 Eli Zaretskii <eliz@gnu.org>
* keyboard.c (Fopen_dribble_file): Encode the dribble file-name
before passing it to system APIs.
* puresize.h (BASE_PURESIZE): Bump by 1K. (Bug#17255)
2014-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
......
......@@ -10087,10 +10087,13 @@ This may include sensitive information such as passwords. */)
if (!NILP (file))
{
int fd;
Lisp_Object encfile;
file = Fexpand_file_name (file, Qnil);
fd = emacs_open (SSDATA (file), O_WRONLY | O_CREAT | O_EXCL, 0600);
if (fd < 0 && errno == EEXIST && unlink (SSDATA (file)) == 0)
fd = emacs_open (SSDATA (file), O_WRONLY | O_CREAT | O_EXCL, 0600);
encfile = ENCODE_FILE (file);
fd = emacs_open (SSDATA (encfile), O_WRONLY | O_CREAT | O_EXCL, 0600);
if (fd < 0 && errno == EEXIST && unlink (SSDATA (encfile)) == 0)
fd = emacs_open (SSDATA (encfile), O_WRONLY | O_CREAT | O_EXCL, 0600);
dribble = fd < 0 ? 0 : fdopen (fd, "w");
if (dribble == 0)
report_file_error ("Opening dribble", file);
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment