Subject: 23.1; auto-save invoked in read-only directories

From: <[email-masked]>
Date: Wed, 18 Apr 2012 14:03:37 -0700

When i edit a file in a directory to which i do not have
write-permission (such as /etc), after i type a line or
two of text, or type a few characters and then move around
in the buffer, emacs will suddenly freeze and just print
a message in the mini-buffer that my text could not be auto-saved.

The message stays up for several seconds before it
yields control of the terminal back to me.

This is extremely inconvenient, and the only way i can
prevent this from happening is to frequently save the file.

I do not want to turn auto-save off, or to mark any buffers
as to not be auto-saved, or to change the location of the
auto-saves (unless it can be done once and forever, only
apply to files in write-protected directories and no others,
and not require a listing of either the files or directories
to which it is to be applied).

The desired behavior is that emacs recognize that a directory
is write-protected, and if an attempt to write to that directory
fails, that it fail silently.  (It would be quite OK to have
this governed by the behavior of a variable set in my .emacs file.)

I am not the only person who has reported this problem to
newsgroups, but i wasn't aware of the possibility of filing
a bug from within emacs until Michael Heerdegen told me
about it.

(Note that emacs does not crash, and never has for me.  But
the freezing happens to me, colleagues of mine, and people
i've never heard of on the newsgroups.)

dan  ([email-masked])

In GNU Emacs 23.1.1 (x86_64-pc-linux-gnu, GTK+ Version 2.20.1)
 of 2010-11-23 on yellow, modified by Debian
configured using `configure  '--build=x86_64-linux-gnu' '--host=x86_64-linux-gnu' '--prefix=/usr' '--sharedstatedir=/var/lib' '--libexecdir=/usr/lib' '--localstatedir=/var/lib' '--infodir=/usr/share/info' '--mandir=/usr/share/man' '--with-pop=yes' '--enable-locallisppath=/etc/emacs23:/etc/emacs:/usr/local/share/emacs/23.1/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/23.1/site-lisp:/usr/share/emacs/site-lisp:/usr/share/emacs/23.1/leim' '--with-x=yes' '--with-x-toolkit=gtk' '--with-toolkit-scroll-bars' 'build_alias=x86_64-linux-gnu' 'host_alias=x86_64-linux-gnu' 'CFLAGS=-DDEBIAN -g -O2' 'LDFLAGS=-g' 'CPPFLAGS=''

Important settings:
  value of $LC_ALL: nil
  value of $LC_COLLATE: nil
  value of $LC_CTYPE: nil
  value of $LC_MESSAGES: nil
  value of $LC_MONETARY: nil
  value of $LC_NUMERIC: nil
  value of $LC_TIME: nil
  value of $LANG: en_US.utf8
  value of $XMODIFIERS: nil
  locale-coding-system: utf-8-unix
  default-enable-multibyte-characters: t

Major mode: Lisp Interaction

Minor modes in effect:
  tooltip-mode: t
  tool-bar-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  global-auto-composition-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  line-number-mode: t
  transient-mark-mode: t

Recent input:
ESC [ > 1 ; 2 4 0 3 ; 0 c ESC x C-f r e p o r t - e 
m TAB RET

Recent messages:
Loading /etc/emacs/site-start.d/50dictionaries-common.el (source)...done
Loading /etc/emacs/site-start.d/50git-core.el (source)...done
Loading /etc/emacs/site-start.d/50js2-mode.el (source)...done
Loading /etc/emacs/site-start.d/50mmm-mode.el (source)...done
Loading /etc/emacs/site-start.d/50php-elisp.el (source)...done
Loading /etc/emacs/site-start.d/50psvn.el (source)...done
Loading /home/danh/elisp/readonly.el (source)...done
Loading /home/danh/.abbrev_defs...done
For information about GNU Emacs and the GNU system, type C-h C-a.
call-interactively: End of buffer