emacs-diffs
[Top][All Lists]
Advanced

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

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


From: Glenn Morris
Subject: [Emacs-diffs] emacs/lisp ChangeLog emacs-lisp/shadow.el
Date: Tue, 10 Nov 2009 08:06:58 +0000

CVSROOT:        /sources/emacs
Module name:    emacs
Changes by:     Glenn Morris <gm>       09/11/10 08:06:58

Modified files:
        lisp           : ChangeLog 
        lisp/emacs-lisp: shadow.el 

Log message:
        (find-emacs-lisp-shadows, list-load-path-shadows): Use dolist.
        (list-load-path-shadows): Use with-current-buffer.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/emacs/lisp/ChangeLog?cvsroot=emacs&r1=1.16589&r2=1.16590
http://cvs.savannah.gnu.org/viewcvs/emacs/lisp/emacs-lisp/shadow.el?cvsroot=emacs&r1=1.32&r2=1.33

Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/emacs/emacs/lisp/ChangeLog,v
retrieving revision 1.16589
retrieving revision 1.16590
diff -u -b -r1.16589 -r1.16590
--- ChangeLog   10 Nov 2009 00:54:45 -0000      1.16589
+++ ChangeLog   10 Nov 2009 08:06:53 -0000      1.16590
@@ -1,3 +1,9 @@
+2009-11-10  Glenn Morris  <address@hidden>
+
+       * emacs-lisp/shadow.el (find-emacs-lisp-shadows)
+       (list-load-path-shadows): Use dolist.
+       (list-load-path-shadows): Use with-current-buffer.
+
 2009-11-10  Juri Linkov  <address@hidden>
 
        * minibuffer.el (read-file-name): Support a list of default values

Index: emacs-lisp/shadow.el
===================================================================
RCS file: /sources/emacs/emacs/lisp/emacs-lisp/shadow.el,v
retrieving revision 1.32
retrieving revision 1.33
diff -u -b -r1.32 -r1.33
--- emacs-lisp/shadow.el        2 Oct 2009 03:48:44 -0000       1.32
+++ emacs-lisp/shadow.el        10 Nov 2009 08:06:58 -0000      1.33
@@ -72,9 +72,6 @@
 are stripped from the file names in the list.
 
 See the documentation for `list-load-path-shadows' for further information."
-
-  (or path (setq path load-path))
-
   (let (true-names                     ; List of dirs considered.
        shadows                         ; List of shadowings, to be returned.
        files                           ; File names ever seen, with dirs.
@@ -83,11 +80,8 @@
        orig-dir                        ; Where the file was first seen.
        files-seen-this-dir             ; Files seen so far in this dir.
        file)                           ; The current file.
-
-
-    (while path
-
-      (setq dir (directory-file-name (file-truename (or (car path) "."))))
+    (dolist (pp (or path load-path))
+      (setq dir (directory-file-name (file-truename (or pp "."))))
       (if (member dir true-names)
          ;; We have already considered this PATH redundant directory.
          ;; Show the redundancy if we are interactive, unless the PATH
@@ -95,12 +89,12 @@
          ;; result of the current working directory, and are therefore
          ;; not always redundant).
          (or noninteractive
-             (and (car path)
-                  (not (string= (car path) "."))
-                  (message "Ignoring redundant directory %s" (car path))))
+             (and pp
+                  (not (string= pp "."))
+                  (message "Ignoring redundant directory %s" pp)))
 
        (setq true-names (append true-names (list dir)))
-       (setq dir (directory-file-name (or (car path) ".")))
+       (setq dir (directory-file-name (or pp ".")))
        (setq curr-files (if (file-accessible-directory-p dir)
                             (directory-files dir nil ".\\.elc?\\(\\.gz\\)?$" 
t)))
        (and curr-files
@@ -109,9 +103,8 @@
 
        (setq files-seen-this-dir nil)
 
-       (while curr-files
+       (dolist (file curr-files)
 
-         (setq file (car curr-files))
          (if (string-match "\\.gz$" file)
              (setq file (substring file 0 -3)))
          (setq file (substring
@@ -141,11 +134,7 @@
                            (append shadows (list base1 base2)))))
 
              ;; Not seen before, add it to the list of seen files.
-             (setq files (cons (cons file dir) files))))
-
-         (setq curr-files (cdr curr-files))))
-       (setq path (cdr path)))
-
+             (setq files (cons (cons file dir) files)))))))
     ;; Return the list of shadowings.
     shadows))
 
@@ -210,11 +199,10 @@
        (tem path)
        toplevs)
     ;; If we can find simple.el in two places,
-    (while tem
-      (if (or (file-exists-p (expand-file-name "simple.el" (car tem)))
-             (file-exists-p (expand-file-name "simple.el.gz" (car tem))))
-         (setq toplevs (cons (car tem) toplevs)))
-      (setq tem (cdr tem)))
+    (dolist (tt tem)
+      (if (or (file-exists-p (expand-file-name "simple.el" tt))
+             (file-exists-p (expand-file-name "simple.el.gz" tt)))
+         (setq toplevs (cons tt toplevs))))
     (if (> (length toplevs) 1)
        ;; Cut off our copy of load-path right before
        ;; the last directory which has simple.el in it.
@@ -242,16 +230,17 @@
        (if stringp
            (buffer-string)
          (if (called-interactively-p 'interactive)
-             (save-excursion
                ;; We are interactive.
                ;; Create the *Shadows* buffer and display shadowings there.
-               (let ((string (buffer-string))
-                     (output-buffer (get-buffer-create "*Shadows*")))
-                 (display-buffer output-buffer)
-                 (set-buffer output-buffer)
+             (let ((string (buffer-string)))
+               (with-current-buffer (get-buffer-create "*Shadows*")
+                 (display-buffer (current-buffer))
+                 (setq buffer-undo-list t
+                       buffer-read-only nil)
                  (erase-buffer)
                  (insert string)
-                 (insert msg "\n")))
+                 (insert msg "\n")
+                 (setq buffer-read-only t)))
            ;; We are non-interactive, print shadows via message.
            (unless (zerop n)
              (message "This site has duplicate Lisp libraries with the same 
name.




reply via email to

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