changeset 62696:84252cd99187

(normal-top-level): Allow modification of load-path while iterating over it.
author Stefan Monnier <monnier@iro.umontreal.ca>
date Wed, 25 May 2005 14:18:45 +0000
parents b47fe7545b02
children 344e02ca2730
files lisp/ChangeLog lisp/startup.el
diffstat 2 files changed, 25 insertions(+), 14 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/ChangeLog	Wed May 25 14:17:42 2005 +0000
+++ b/lisp/ChangeLog	Wed May 25 14:18:45 2005 +0000
@@ -1,3 +1,8 @@
+2005-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+	* startup.el (normal-top-level): Allow modification of load-path while
+	we're iterating over it.
+
 2005-05-25  Juanma Barranquero  <lekktu@gmail.com>
 
 	* thumbs.el (thumbs-thumbsdir-max-size, thumbs-temp-file)
@@ -22,15 +27,15 @@
 
 2005-05-24  Nick Roberts  <nickrob@snap.net.nz>
 
-	* progmodes/gdb-ui.el (gdb-inferior-io-mode-map): Bind
-	gdb-inferior-io-eof to C-d.
+	* progmodes/gdb-ui.el (gdb-inferior-io-mode-map):
+	Bind gdb-inferior-io-eof to C-d.
 
 	* dired.el (dired-dnd-popup-notice): Use message-box.
 
 2005-05-23  Masatake YAMATO  <jet@gyve.org>
 
-	* bindings.el (mode-line-major-mode-keymap): Bind
-	[mode-line down-mouse-1] to `mouse-major-mode-menu'.
+	* bindings.el (mode-line-major-mode-keymap):
+	Bind [mode-line down-mouse-1] to `mouse-major-mode-menu'.
 
 	* faces.el (mode-line-highlight): New face.
 
@@ -394,7 +399,7 @@
 
 2005-05-19  Carsten Dominik  <dominik@science.uva.nl>
 
-	* textmodes/reftex.el (reftex-isearch-minor-mode): Moved the
+	* textmodes/reftex.el (reftex-isearch-minor-mode): Move the
 	definition of this variable from reftex-global.el to reftex.el,
 	because it is needed in the menu.
 
@@ -417,8 +422,8 @@
 	(makefile-add-this-line-macro): Simplify and integrate into
 	`makefile-pickup-macros.
 	(makefile-pickup-filenames-as-targets): Simplify.
-	(makefile-previous-dependency, makefile-match-dependency): Don't
-	stumble over `::'.
+	(makefile-previous-dependency, makefile-match-dependency):
+	Don't stumble over `::'.
 
 2005-05-19  Nick Roberts  <nickrob@snap.net.nz>
 
@@ -432,8 +437,8 @@
 	* help-fns.el (describe-variable): Remove hyperlinks in a
 	variable's value as these are quite frequently inappropriate.
 
-	* follow.el (follow-submit-feedback, follow-mode): Remove
-	references to post-command-idle-hook.
+	* follow.el (follow-submit-feedback, follow-mode):
+	Remove references to post-command-idle-hook.
 
 2005-05-18  Daniel Pfeiffer  <occitan@esperanto.org>
 
--- a/lisp/startup.el	Wed May 25 14:17:42 2005 +0000
+++ b/lisp/startup.el	Wed May 25 14:18:45 2005 +0000
@@ -368,11 +368,17 @@
     ;; of that dir into load-path,
     ;; Look for a leim-list.el file too.  Loading it will register
     ;; available input methods.
-    (dolist (dir load-path)
-      (let ((default-directory dir))
-	(load (expand-file-name "subdirs.el") t t t))
-      (let ((default-directory dir))
-	(load (expand-file-name "leim-list.el") t t t)))
+    (let ((tail load-path) dir)
+      (while tail
+        (setq dir (car tail))
+        (let ((default-directory dir))
+          (load (expand-file-name "subdirs.el") t t t))
+        (let ((default-directory dir))
+          (load (expand-file-name "leim-list.el") t t t))
+        ;; We don't use a dolist loop and we put this "setq-cdr" command at
+        ;; the end, because the subdirs.el files may add elements to the end
+        ;; of load-path and we want to take it into account.
+        (setq tail (cdr tail))))
     (unless (eq system-type 'vax-vms)
       ;; If the PWD environment variable isn't accurate, delete it.
       (let ((pwd (getenv "PWD")))