emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] emacs/lisp ChangeLog bookmark.el


From: Stefan Monnier
Subject: [Emacs-diffs] emacs/lisp ChangeLog bookmark.el
Date: Sun, 20 Sep 2009 14:54:22 +0000

CVSROOT:        /sources/emacs
Module name:    emacs
Changes by:     Stefan Monnier <monnier>        09/09/20 14:54:21

Modified files:
        lisp           : ChangeLog bookmark.el 

Log message:
        (bookmark-write-file): Avoid calling `pp' with large
        list, to workaround performance problem (bug#4485).

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/emacs/lisp/ChangeLog?cvsroot=emacs&r1=1.16219&r2=1.16220
http://cvs.savannah.gnu.org/viewcvs/emacs/lisp/bookmark.el?cvsroot=emacs&r1=1.124&r2=1.125

Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/emacs/emacs/lisp/ChangeLog,v
retrieving revision 1.16219
retrieving revision 1.16220
diff -u -b -r1.16219 -r1.16220
--- ChangeLog   20 Sep 2009 05:37:49 -0000      1.16219
+++ ChangeLog   20 Sep 2009 14:54:17 -0000      1.16220
@@ -1,3 +1,8 @@
+2009-09-20  Thierry Volpiatto  <address@hidden>
+
+       * bookmark.el (bookmark-write-file): Avoid calling `pp' with large
+       list, to workaround performance problem (bug#4485).
+
 2009-09-20  Nick Roberts  <address@hidden>
 
        * progmodes/gud.el (gud-sentinel): Revert indavertant change.
@@ -17,8 +22,8 @@
 
 2009-09-19  Chong Yidong  <address@hidden>
 
-       * emacs-lisp/advice.el (ad-get-argument, ad-set-argument): Doc
-       fix (Bug#3932).
+       * emacs-lisp/advice.el (ad-get-argument, ad-set-argument):
+       Doc fix (Bug#3932).
 
        * subr.el (baud-rate): Remove long-obsolete function (Bug#4372).
 
@@ -26,8 +31,8 @@
        (time-stamp-dd/mm/yyyy, time-stamp-mon-dd-yyyy)
        (time-stamp-dd-mon-yy, time-stamp-yy/mm/dd)
        (time-stamp-yyyy/mm/dd, time-stamp-yyyy-mm-dd)
-       (time-stamp-yymmdd, time-stamp-hh:mm:ss, time-stamp-hhmm): Remove
-       functions that have been obsolete since 1995 (Bug#4436).
+       (time-stamp-yymmdd, time-stamp-hh:mm:ss, time-stamp-hhmm):
+       Remove functions that have been obsolete since 1995 (Bug#4436).
 
        * progmodes/sh-script.el (sh-learn-buffer-indent): Pop to the
        indent buffer only if called interactively (Bug#4452).

Index: bookmark.el
===================================================================
RCS file: /sources/emacs/emacs/lisp/bookmark.el,v
retrieving revision 1.124
retrieving revision 1.125
diff -u -b -r1.124 -r1.125
--- bookmark.el 5 Jan 2009 03:18:45 -0000       1.124
+++ bookmark.el 20 Sep 2009 14:54:20 -0000      1.125
@@ -1301,7 +1301,12 @@
     (let ((print-length nil)
           (print-level nil))
       (bookmark-insert-file-format-version-stamp)
-      (pp bookmark-alist (current-buffer))
+      (insert "(")
+      ;; Rather than a single call to `pp' we make one per bookmark.
+      ;; Apparently `pp' has a poor algorithmic complexity, so this
+      ;; scales a lot better.  bug#4485.
+      (dolist (i  bookmark-alist) (pp i (current-buffer)))
+      (insert ")")
       (let ((version-control
              (cond
               ((null bookmark-version-control) nil)




reply via email to

[Prev in Thread] Current Thread [Next in Thread]