2001-05-31 Gerd Moellmann <gerd@gnu.org>
+ * fileio.c (Fdo_auto_save): Don't try to create the directory of
+ auto-save-list-file-name when shutting down Emacs, because
+ creating the directory might signal an error, and leaves
+ Emacs in a strange state.
+
* term.c: (tty_cursor_hidden): New variable.
(update_begin): Don't call tty_hide_cursor. Clean up.
(update_end, set_terminal_window, set_scroll_region): Clean up.
if (STRINGP (Vauto_save_list_file_name))
{
- Lisp_Object listfile, dir;
+ Lisp_Object listfile;
listfile = Fexpand_file_name (Vauto_save_list_file_name, Qnil);
-
- dir = Ffile_name_directory (listfile);
- if (NILP (Ffile_directory_p (dir)))
- call2 (Qmake_directory, dir, Qt);
+
+ /* Don't try to create the directory when shutting down Emacs,
+ because creating the directory might signal an error, and
+ that would leave Emacs in a strange state. */
+ if (!NILP (Vrun_hooks))
+ {
+ Lisp_Object dir;
+ dir = Ffile_name_directory (listfile);
+ if (NILP (Ffile_directory_p (dir)))
+ call2 (Qmake_directory, dir, Qt);
+ }
stream = fopen (XSTRING (listfile)->data, "w");
if (stream != NULL)