From unknown Sun Jun 22 11:32:44 2025 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.509 (Entity 5.509) Content-Type: text/plain; charset=utf-8 From: bug#13432 <13432@debbugs.gnu.org> To: bug#13432 <13432@debbugs.gnu.org> Subject: Status: 24.2; File does not get saved when save-buffer called Reply-To: bug#13432 <13432@debbugs.gnu.org> Date: Sun, 22 Jun 2025 18:32:44 +0000 retitle 13432 24.2; File does not get saved when save-buffer called reassign 13432 emacs submitter 13432 Peter Milliken severity 13432 normal tag 13432 notabug thanks From debbugs-submit-bounces@debbugs.gnu.org Sun Jan 13 19:46:02 2013 Received: (at submit) by debbugs.gnu.org; 14 Jan 2013 00:46:02 +0000 Received: from localhost ([127.0.0.1]:58838 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TuYBc-0008Rt-8s for submit@debbugs.gnu.org; Sun, 13 Jan 2013 19:46:02 -0500 Received: from eggs.gnu.org ([208.118.235.92]:48530) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TuWWC-0005wT-Jq for submit@debbugs.gnu.org; Sun, 13 Jan 2013 17:59:10 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1TuWVe-0003hs-2y for submit@debbugs.gnu.org; Sun, 13 Jan 2013 17:58:43 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-102.6 required=5.0 tests=BAYES_00,FREEMAIL_FROM, HTML_MESSAGE,RCVD_IN_DNSWL_LOW,T_DKIM_INVALID,USER_IN_WHITELIST autolearn=unavailable version=3.3.2 Received: from lists.gnu.org ([208.118.235.17]:48685) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TuWEo-0006q8-Da for submit@debbugs.gnu.org; Sun, 13 Jan 2013 17:41:10 -0500 Received: from eggs.gnu.org ([208.118.235.92]:53372) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TuWEh-0005F2-AA for bug-gnu-emacs@gnu.org; Sun, 13 Jan 2013 17:41:10 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1TuWEb-0006ml-S9 for bug-gnu-emacs@gnu.org; Sun, 13 Jan 2013 17:41:03 -0500 Received: from mail-ee0-f50.google.com ([74.125.83.50]:57121) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TuWEb-0006m8-FS for bug-gnu-emacs@gnu.org; Sun, 13 Jan 2013 17:40:57 -0500 Received: by mail-ee0-f50.google.com with SMTP id e51so996048eek.37 for ; Sun, 13 Jan 2013 14:40:56 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:date:message-id:subject:from:to:content-type; bh=KKybSkfhF0GJdbYj2Dh6YPixEtaqt42K6KpffHOVwIY=; b=NghybFeRhOLgbPMKf2eIoBRSGiDXvn1nhlv5JTYYHsPuOC3mrhVXfxTFMYKBXqugEV ELLYlRWPQ43ct1s71qY1Z6HzCYQAw/Ard7SK+S00ofNIDTfkt5qeaT92CNKvLG8pZOTg RYQBzPBSzeulWHqdKktbgsW8me3Sx9DOaTc2RXj35Lm2BuqtVfQcxotV3rEbZTcl33Dd r5uvk4O9PZQqFlJaNn2ihNgRA9ng2wJzvWDG/vNjnJHyJ0R1Fx3wp7kksly0PoDwxB4y yFxRMYWKBTJMX5cx2mb2LXqttEMEgXRAOfLTIvYJvHVXNbRMHrv2cl/6im0AVx630gEv xu9w== MIME-Version: 1.0 Received: by 10.14.177.1 with SMTP id c1mr223198339eem.8.1358116855995; Sun, 13 Jan 2013 14:40:55 -0800 (PST) Received: by 10.223.69.82 with HTTP; Sun, 13 Jan 2013 14:40:55 -0800 (PST) Date: Mon, 14 Jan 2013 09:40:55 +1100 Message-ID: Subject: 24.2; File does not get saved when save-buffer called From: Peter Milliken To: bug-gnu-emacs@gnu.org Content-Type: multipart/alternative; boundary=047d7b621e0cc3de1a04d333383f X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x [fuzzy] X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 208.118.235.17 X-Spam-Score: -6.1 (------) X-Debbugs-Envelope-To: submit X-Mailman-Approved-At: Sun, 13 Jan 2013 19:45:59 -0500 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -6.1 (------) --047d7b621e0cc3de1a04d333383f Content-Type: text/plain; charset=ISO-8859-1 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) --047d7b621e0cc3de1a04d333383f Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable
From: Peter Milliken <peter= m@resmed.com.au>
Subject: 24.2; File does not get sa= ved when save-buffer called
--text follows this line--
This bug report will be sent to t= he Bug-GNU-Emacs mailing list
and the GNU bug tracker at debbugs.gnu.org. =A0Please check that
=
the From: line contains a valid email address. =A0After a delay of up
=
to one day, you should receive an acknowledgement at that address.

Please write in English if possible, as the Emacs mai= ntainers
usually do not have translators for other languages.

Please describe exactly what actions triggered the bug, and
the precise symptoms of the bug. =A0If you can, give a recipe
starting from `emacs -Q':

This behaviour start= ed with Emacs 24.1 - it does not happen on earlier versions.

=
In my .emacs I defadvice several major modes to include a call t= o
untabify in the local-write-file-hooks. With this version of Emacs, th= e defadvice=A0
seems to trigger a bug where the message line stat= es the file has been
saved when it has not been saved - the statu= s line indicates it is still
in a modified state as well.

Minimal/sample c= ode that triggers/illustrates this bug is:

(defadv= ice python-mode (after minor-modes-for-python activate compile)
=A0 (add-hook 'local-write-file-hooks '(lambda () (untabify (point-= min) (point-max)))))


If Emacs crash= ed, and you have the Emacs process in the gdb debugger,
please in= clude the output from the following gdb commands:
=A0 =A0 `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)
=A0of 2012-08-29 on MARVIN
Windowing system distributor `Mic= rosoft Corp.', version 6.1.7601
Configured using:
= =A0`configure --with-gcc (4.6) --cflags
=A0-ID:/devel/emacs/libs/= libXpm-3.5.8/include
=A0-ID:/devel/emacs/libs/libXpm-3.5.8/src
=A0-ID:/devel/emac= s/libs/libpng-dev_1.4.3-1/include
=A0-ID:/devel/emacs/libs/zlib-d= ev_1.2.5-2/include
=A0-ID:/devel/emacs/libs/giflib-4.1.4-1/includ= e
=A0-ID:/devel/emacs/libs/jpeg-6b-4/include
=A0-ID:/devel/ema= cs/libs/tiff-3.8.2-1/include
=A0-ID:/devel/emacs/libs/gnutls-3.0.= 9/include'

Important settings:
=A0 v= alue of $LC_ALL: nil
=A0 value of $LC_COLLATE: nil
=A0 value of $LC_CTYPE: nil
=A0 value of $LC_MESSAGES: nil
=A0 value of $LC_MONETARY:= nil
=A0 value of $LC_NUMERIC: nil
=A0 value of $LC_TIM= E: nil
=A0 value of $LANG: en_US.UTF-8
=A0 value of $XMODIFIERS: ni= l
=A0 locale-coding-system: cp1252
=A0 default enable-m= ultibyte-characters: t

Major mode: Emacs-Lisp

Minor modes in effect:
=A0 show-paren-mode: t
=A0 iswitchb-mode: t
=A0 desktop-save-mode: t
=A0= global-undo-tree-mode: t
=A0 undo-tree-mode: t
=A0 rec= entf-mode: t
=A0 tooltip-mode: t
=A0 mouse-wheel-mode: t
=A0 me= nu-bar-mode: t
=A0 file-name-shadow-mode: t
=A0 global-= font-lock-mode: t
=A0 font-lock-mode: t
=A0 blink-curso= r-mode: t
=A0 auto-composition-mode: t
=A0 auto-encryption-mode: t
=A0 auto-compression-mode: t
=A0 column-number-mode: t
=A0 line-number-mode: t

Recent input:
=
C-x b p e p <return> SPC <backspace> C-x C-s C-x 3=A0
C-x b e m <return> C-x C-f C-a C-k c : / e m <tab>=A0
/ l i s p <tab> u n t a b <tab> <backspace> <bac= kspace>=A0
<backspace> <backspace> <backspace&g= t; t a b <tab> <return>=A0
<down> <down> <down> <down> <down> <d= own> <down> <down>=A0
<down> <down> &l= t;down> <down> <down> <down> <down> <down>= =A0
<down> <down> <down> <down> <down> <d= own> <down> <down>=A0
<down> <down> &l= t;down> <down> <down> <down> <down> <down>= =A0
<down> <down> <escape> C-x <up> <up> <= ;up> <up> <up>=A0
C-x C-g <escape> x r e p o= r t SPC e m SPC SPC <re
turn>

Rec= ent 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:/cy= gwin/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/pet= erm/share/emacs/site-lisp/pymacs/pep.py...
Wrote c:/cygwin/home/p= eterm/share/emacs/site-lisp/pymacs/pep.py
untabify
Quit

Load-path shadows:
~/share/emacs/site-lisp/python-mode hides ~/share/emacs/site-lisp/p= ython-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/sit= e-lisp/ansi-color hides c:/emacs/lisp/ansi-color
~/share/emacs/si= te-lisp/cc-mode/cc-vars hides c:/emacs/lisp/progmodes/cc-vars
~/share/emacs/site-lisp/cc-mode/cc-styles hides c:/emacs/lisp/progmode= s/cc-styles
~/share/emacs/site-lisp/cc-mode/cc-mode hides c:/emac= s/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/progmode= s/cc-engine
~/share/emacs/site-lisp/cc-mode/cc-defs hides c:/emac= s/lisp/progmodes/cc-defs
~/share/emacs/site-lisp/cc-mode/cc-compa= t 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:/emac= s/lisp/progmodes/cc-bytecomp
~/share/emacs/site-lisp/cc-mode/cc-a= wk 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/c= alendar/todo-mode
~/share/emacs/site-lisp/timeclock hides c:/emac= s/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 r= eporter desktop timid undo-tree diff iedit
ido message format-spec rfc822 mml mml-sec mm-decode mm-bodies mm-enco= de
mail-parse rfc2231 mailabbrev gmm-utils mailheader smtpmail au= th-source
eieio password-cache sendmail rfc2047 rfc2045 ietf-drum= s pabbrev
thingatpt browse-kill-ring ibuffer timeclock host-conn gnus gnus-ems
nnheader gnus-util mail-utils mm-util mail-prsvr info ange-vms ang= e-ftp
woman man recentf tree-widget wid-edit array logger assoc e= val-expr
w32-print ps-print ps-def lpr misc-defuns template-mode noweb derived<= /div>
multi-mode gnuserv python-mode find-utility utils rect wide-colum= n
easy-mmode ada-mode compile comint ansi-color ring which-func i= menu
find-file scroll-in-place cc-mode warnings edmacro kmacro byte-opt
bytecomp byte-compile cconv macroexp cc-fonts cc-awk cc-guess cc-men= us
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 easyme= nu
cl escreen else-utils else-mode expand-a-word setnu align-addo= ns align
time-date tooltip ediff-hook vc-hooks lisp-float-type mw= heel dos-w32
disp-table ls-lisp w32-win w32-vars tool-bar dnd fontset image fringe<= /div>
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 abb= rev
minibuffer loaddefs button faces cus-face files text-properties overla= y
sha1 md5 base64 format env code-pages mule custom widget
<= div>hashtable-print-readable backquote make-network-process multi-tty emacs= )

--047d7b621e0cc3de1a04d333383f-- From debbugs-submit-bounces@debbugs.gnu.org Sun Jan 13 19:54:56 2013 Received: (at 13432) by debbugs.gnu.org; 14 Jan 2013 00:54:56 +0000 Received: from localhost ([127.0.0.1]:58860 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TuYKF-0000Eg-DA for submit@debbugs.gnu.org; Sun, 13 Jan 2013 19:54:55 -0500 Received: from fencepost.gnu.org ([208.118.235.10]:42514 ident=Debian-exim) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TuYKD-0000EZ-3J for 13432@debbugs.gnu.org; Sun, 13 Jan 2013 19:54:54 -0500 Received: from rgm by fencepost.gnu.org with local (Exim 4.71) (envelope-from ) id 1TuYJq-0008KM-8y; Sun, 13 Jan 2013 19:54:30 -0500 From: Glenn Morris To: Peter Milliken Subject: Re: bug#13432: 24.2; File does not get saved when save-buffer called References: X-Spook: warfare Clinton unclassified Mafia condor Firewalls NATO X-Ran: O=VdD&f!L"tw`b(_+\Tf93L'=+%B&7Sct@bBq{g8-8Gv_Z&p_D8@;I@(&^yxdlqenuo2R. X-Hue: cyan X-Debbugs-No-Ack: yes X-Attribution: GM Date: Sun, 13 Jan 2013 19:54:29 -0500 In-Reply-To: (Peter Milliken's message of "Mon, 14 Jan 2013 09:40:55 +1100") Message-ID: <7qwqvglh2y.fsf@fencepost.gnu.org> User-Agent: Gnus (www.gnus.org), GNU Emacs (www.gnu.org/software/emacs/) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Spam-Score: -4.2 (----) X-Debbugs-Envelope-To: 13432 Cc: 13432@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -4.2 (----) Peter Milliken wrote: > 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))))) Please read the doc of local-write-file-hooks: This variable is obsolete since 22.1; use `write-file-functions' instead. >From write-file-functions: If one of them returns non-nil, the file is considered already written ^^^^^^^^^^^^^^^^^^^^^^^^^^ and the rest are not called. So: ensure that any functions you add return nil. The return value of untabify is unspecfied (ie, could be anything). From debbugs-submit-bounces@debbugs.gnu.org Sun Jan 13 20:39:28 2013 Received: (at control) by debbugs.gnu.org; 14 Jan 2013 01:39:28 +0000 Received: from localhost ([127.0.0.1]:58904 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TuZ1M-000343-Er for submit@debbugs.gnu.org; Sun, 13 Jan 2013 20:39:28 -0500 Received: from ironport2-out.teksavvy.com ([206.248.154.182]:47154) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TuZ1I-00033l-Fr; Sun, 13 Jan 2013 20:39:24 -0500 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AtkGAG6Zu09FpZpV/2dsb2JhbABEgXuyFoEIghYBBVYjEAs0EhQYDSSIIboJkEQDiEKacYFYgwc X-IronPort-AV: E=Sophos;i="4.75,637,1330923600"; d="scan'208";a="212446044" Received: from 69-165-154-85.dsl.teksavvy.com (HELO pastel.home) ([69.165.154.85]) by ironport2-out.teksavvy.com with ESMTP/TLS/ADH-AES256-SHA; 13 Jan 2013 20:38:57 -0500 Received: by pastel.home (Postfix, from userid 20848) id 2FBAE58A07; Sun, 13 Jan 2013 20:38:56 -0500 (EST) From: Stefan Monnier To: Peter Milliken Subject: Re: bug#13432: 24.2; File does not get saved when save-buffer called Message-ID: References: Date: Sun, 13 Jan 2013 20:38:56 -0500 In-Reply-To: (Peter Milliken's message of "Mon, 14 Jan 2013 09:40:55 +1100") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 0.8 (/) X-Debbugs-Envelope-To: control Cc: 13432-done@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -0.0 (/) tags 13432 notabug thanks > (defadvice python-mode (after minor-modes-for-python activate compile) > (add-hook 'local-write-file-hooks > '(lambda () (untabify (point-min) (point-max))))) As Glenn explains, this is not a bug. It's probably due to a change in untabify which now returns a different value, but since the return value of untabify is undocumented, this is not a bug/regression. But while I'm here, I'll point out a few improvement to your above code: - don't quote lambda. - use python-mode-hook rather than defadvice. - use before-save-hook rather than local-write-file-hooks (this will also fix your problem). I.e. (add-hook 'python-mode-hook (lambda () (add-hook 'before-save-hook (lambda () (untabify (point-min) (point-max))) nil 'local))) -- Stefan From unknown Sun Jun 22 11:32:44 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Mon, 11 Feb 2013 12:24:03 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator