changeset 25438:4868ac7f6a3f

(tags-loop-continue): After tags-loop-operate returns, force skip to next file.
author Richard M. Stallman <rms@gnu.org>
date Sun, 29 Aug 1999 20:32:04 +0000
parents 95301c74bdd9
children f597d85734d7
files lisp/progmodes/etags.el
diffstat 1 files changed, 7 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/progmodes/etags.el	Sun Aug 29 20:27:40 1999 +0000
+++ b/lisp/progmodes/etags.el	Sun Aug 29 20:32:04 1999 +0000
@@ -1454,14 +1454,18 @@
 nil, we exit; otherwise we scan the next file."
   (interactive)
   (let (new
+	;; Non-nil means we have finished one file
+	;; and should not scan it again.
+	file-finished
 	(messaged nil))
     (while
 	(progn
 	  ;; Scan files quickly for the first or next interesting one.
-	  (while (or first-time
+	  (while (or first-time file-finished
 		     (save-restriction
 		       (widen)
 		       (not (eval tags-loop-scan))))
+	    (setq file-finished nil)
 	    (setq new (next-file first-time t))
 	    ;; If NEW is non-nil, we got a temp buffer,
 	    ;; and NEW is the file name.
@@ -1486,7 +1490,8 @@
 
 	  ;; Now operate on the file.
 	  ;; If value is non-nil, continue to scan the next file.
-	  (eval tags-loop-operate)))
+	  (eval tags-loop-operate))
+      (setq file-finished t))
     (and messaged
 	 (null tags-loop-operate)
 	 (message "Scanning file %s...found" buffer-file-name))))