(file-chase-links): Fix previous change.
authorRichard M. Stallman <rms@gnu.org>
Wed, 9 Apr 2003 19:06:19 +0000 (19:06 +0000)
committerRichard M. Stallman <rms@gnu.org>
Wed, 9 Apr 2003 19:06:19 +0000 (19:06 +0000)
lisp/ChangeLog
lisp/files.el

index 003ae0f..937da2b 100644 (file)
@@ -1,3 +1,7 @@
+2003-04-09  Richard M. Stallman  <rms@gnu.org>
+
+       * files.el (file-chase-links): Fix previous change.
+
 2003-04-09  Juanma Barranquero  <lektu@terra.es>
 
        * frame.el (new-frame): Add obsolescence declaration.
index 1d8cc2a..d11014a 100644 (file)
@@ -745,12 +745,11 @@ directory name is a symbolic link.
 If the optional argument LIMIT is a number,
 it means chase no more than that many links and then stop."
   (let (tem (newname filename)
-           (count 0)
-           (max (max limit 100)))
+           (count 0))
     (while (and (or (null limit) (< count limit))
                (setq tem (file-symlink-p newname)))
       (save-match-data
-       (if (= count max)
+       (if (and (null limit) (= count 100))
            (error "Apparent cycle of symbolic links for %s" filename))
        ;; In the context of a link, `//' doesn't mean what Emacs thinks.
        (while (string-match "//+" tem)
@@ -769,7 +768,7 @@ it means chase no more than that many links and then stop."
          ;; Now find the parent of that dir.
          (setq newname (file-name-directory newname)))
        (setq newname (expand-file-name tem (file-name-directory newname)))
-       (setq count (1- count))))
+       (setq count (1+ count))))
     newname))
 
 (defun recode-file-name (file coding new-coding &optional ok-if-already-exists)