Didier Verna <didier(a)xemacs.org> writes:
Dear reviewers,
This patch fixes the loss of locality that I have observed on
write-file-hooks and friends (the 't in the local value was lost). It is
also recommended for 21.4. I'll apply it by the end of the week if
nobody objects.
Interesting!
Didier, have you also observed bbdb losing coding cookie of line 1 on write?
This might be the reason for the coding system breakage reported on
bbdb-info recently.
See, e.g.
http://www.mail-archive.com/bbdb-info@lists.sourceforge.net/index.html#04609
Could the issue you found have to do with this?
Adrian
lisp/ChangeLog addition:
2007-08-29 Didier Verna <didier(a)xemacs.org>
* files.el (files-fetch-hook-value): Preserve locality of hooks by
working on copies.
XEmacs source patch:
Diff command: cvs -q diff -u -t -b -B -w
Files affected: lisp/files.el
Index: lisp/files.el
===================================================================
RCS file: /pack/xemacscvs/XEmacs/xemacs/lisp/files.el,v
retrieving revision 1.78
diff -u -u -t -b -B -w -r1.78 files.el
--- lisp/files.el 21 Jun 2007 23:27:16 -0000 1.78
+++ lisp/files.el 29 Aug 2007 09:02:03 -0000
@@ -2809,8 +2809,8 @@
(put 'save-buffer-coding-system 'permanent-local t)
(defun files-fetch-hook-value (hook)
- (let ((localval (symbol-value hook))
- (globalval (default-value hook)))
+ (let ((localval (copy-list (symbol-value hook)))
+ (globalval (copy-list (default-value hook))))
(if (memq t localval)
(setq localval (append (delq t localval) (delq t globalval))))
localval))
--
Adrian Aichner
mailto:adrian@xemacs.org
http://www.xemacs.org/
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches