From: Peter Milliken To: bug-gnu-emacs@gnu.org Subject: 24.2; File does not get saved when save-buffer called --text follows this line-- This bug report will be sent to the Bug-GNU-Emacs mailing list and the GNU bug tracker at debbugs.gnu.org. Please check that the From: line contains a valid email address. After a delay of up to one day, you should receive an acknowledgement at that address. Please write in English if possible, as the Emacs maintainers usually do not have translators for other languages. Please describe exactly what actions triggered the bug, and the precise symptoms of the bug. If you can, give a recipe starting from `emacs -Q': This behaviour started with Emacs 24.1 - it does not happen on earlier versions. In my .emacs I defadvice several major modes to include a call to untabify in the local-write-file-hooks. With this version of Emacs, the defadvice seems to trigger a bug where the message line states the file has been saved when it has not been saved - the status line indicates it is still in a modified state as well. Minimal/sample code that triggers/illustrates this bug is: (defadvice python-mode (after minor-modes-for-python activate compile) (add-hook 'local-write-file-hooks '(lambda () (untabify (point-min) (point-max))))) If Emacs crashed, and you have the Emacs process in the gdb debugger, please include the output from the following gdb commands: `bt full' and `xbacktrace'. For information about debugging Emacs, please read the file c:/emacs/etc/DEBUG. In GNU Emacs 24.2.1 (i386-mingw-nt6.1.7601) of 2012-08-29 on MARVIN Windowing system distributor `Microsoft Corp.', version 6.1.7601 Configured using: `configure --with-gcc (4.6) --cflags -ID:/devel/emacs/libs/libXpm-3.5.8/include -ID:/devel/emacs/libs/libXpm-3.5.8/src -ID:/devel/emacs/libs/libpng-dev_1.4.3-1/include -ID:/devel/emacs/libs/zlib-dev_1.2.5-2/include -ID:/devel/emacs/libs/giflib-4.1.4-1/include -ID:/devel/emacs/libs/jpeg-6b-4/include -ID:/devel/emacs/libs/tiff-3.8.2-1/include -ID:/devel/emacs/libs/gnutls-3.0.9/include' 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.UTF-8 value of $XMODIFIERS: nil locale-coding-system: cp1252 default enable-multibyte-characters: t Major mode: Emacs-Lisp Minor modes in effect: show-paren-mode: t iswitchb-mode: t desktop-save-mode: t global-undo-tree-mode: t undo-tree-mode: t recentf-mode: t tooltip-mode: t mouse-wheel-mode: t menu-bar-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t blink-cursor-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t column-number-mode: t line-number-mode: t Recent input: C-x b p e p SPC C-x C-s C-x 3 C-x b e m C-x C-f C-a C-k c : / e m / l i s p u n t a b t a b C-x C-x C-g x r e p o r t SPC e m SPC SPC Recent messages: Language Python exists, assuming attribute modification Fill column set to 80 (was 70) Language C exists, assuming attribute modification Fill column set to 80 (was 70) Wrote c:/cygwin/home/peterm/.emacs.desktop.lock Desktop: 4 buffers restored. For information about GNU Emacs and the GNU system, type C-h C-a. Saving file c:/cygwin/home/peterm/share/emacs/site-lisp/pymacs/pep.py... Wrote c:/cygwin/home/peterm/share/emacs/site-lisp/pymacs/pep.py untabify Quit Load-path shadows: ~/share/emacs/site-lisp/python-mode hides ~/share/emacs/site-lisp/python-mode/python-mode ~/share/emacs/site-lisp/tree-widget hides c:/emacs/lisp/tree-widget ~/share/emacs/site-lisp/expand hides c:/emacs/lisp/expand ~/share/emacs/site-lisp/bs hides c:/emacs/lisp/bs ~/share/emacs/site-lisp/ansi-color hides c:/emacs/lisp/ansi-color ~/share/emacs/site-lisp/cc-mode/cc-vars hides c:/emacs/lisp/progmodes/cc-vars ~/share/emacs/site-lisp/cc-mode/cc-styles hides c:/emacs/lisp/progmodes/cc-styles ~/share/emacs/site-lisp/cc-mode/cc-mode hides c:/emacs/lisp/progmodes/cc-mode ~/share/emacs/site-lisp/cc-mode/cc-menus hides c:/emacs/lisp/progmodes/cc-menus ~/share/emacs/site-lisp/cc-mode/cc-langs hides c:/emacs/lisp/progmodes/cc-langs ~/share/emacs/site-lisp/cc-mode/cc-guess hides c:/emacs/lisp/progmodes/cc-guess ~/share/emacs/site-lisp/cc-mode/cc-fonts hides c:/emacs/lisp/progmodes/cc-fonts ~/share/emacs/site-lisp/cc-mode/cc-engine hides c:/emacs/lisp/progmodes/cc-engine ~/share/emacs/site-lisp/cc-mode/cc-defs hides c:/emacs/lisp/progmodes/cc-defs ~/share/emacs/site-lisp/cc-mode/cc-compat hides c:/emacs/lisp/progmodes/cc-compat ~/share/emacs/site-lisp/cc-mode/cc-cmds hides c:/emacs/lisp/progmodes/cc-cmds ~/share/emacs/site-lisp/cc-mode/cc-bytecomp hides c:/emacs/lisp/progmodes/cc-bytecomp ~/share/emacs/site-lisp/cc-mode/cc-awk hides c:/emacs/lisp/progmodes/cc-awk ~/share/emacs/site-lisp/cc-mode/cc-align hides c:/emacs/lisp/progmodes/cc-align ~/share/emacs/site-lisp/todo-mode hides c:/emacs/lisp/calendar/todo-mode ~/share/emacs/site-lisp/timeclock hides c:/emacs/lisp/calendar/timeclock c:/emacs/lisp/recentf hides ~/share/emacs/site-lisp/fsfemacs/recentf Features: (shadow sort mail-extr emacsbug paren vc-dispatcher vc-svn iswitchb pymacs session color-theme reporter desktop timid undo-tree diff iedit ido message format-spec rfc822 mml mml-sec mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader smtpmail auth-source eieio password-cache sendmail rfc2047 rfc2045 ietf-drums pabbrev thingatpt browse-kill-ring ibuffer timeclock host-conn gnus gnus-ems nnheader gnus-util mail-utils mm-util mail-prsvr info ange-vms ange-ftp woman man recentf tree-widget wid-edit array logger assoc eval-expr w32-print ps-print ps-def lpr misc-defuns template-mode noweb derived multi-mode gnuserv python-mode find-utility utils rect wide-column easy-mmode ada-mode compile comint ansi-color ring which-func imenu find-file scroll-in-place cc-mode warnings edmacro kmacro byte-opt bytecomp byte-compile cconv macroexp cc-fonts cc-awk cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-langs cc-vars cc-defs regexp-opt cc-bytecomp fold-isearch folding advice help-fns advice-preload easymenu cl escreen else-utils else-mode expand-a-word setnu align-addons align time-date tooltip ediff-hook vc-hooks lisp-float-type mwheel dos-w32 disp-table ls-lisp w32-win w32-vars tool-bar dnd fontset image fringe lisp-mode register page menu-bar rfn-eshadow timer select scroll-bar mouse jit-lock font-lock syntax facemenu font-core frame cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese case-table epa-hook jka-cmpr-hook help simple abbrev minibuffer loaddefs button faces cus-face files text-properties overlay sha1 md5 base64 format env code-pages mule custom widget hashtable-print-readable backquote make-network-process multi-tty emacs)