From: Lars Ingebrigtsen Date: Tue, 19 Jan 2021 04:13:03 +0000 (+0100) Subject: Don't infloop in comint-redirect-results-list-from-process X-Git-Tag: emacs-28.0.90~4225 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=43982a8f1017f709f78d5722796c266d4f72de05;p=emacs.git Don't infloop in comint-redirect-results-list-from-process * lisp/comint.el (comint-redirect-results-list-from-process): Ensure forward progress (bug#45950). --- diff --git a/lisp/comint.el b/lisp/comint.el index 53153af7d27..e52d67d0e50 100644 --- a/lisp/comint.el +++ b/lisp/comint.el @@ -3863,7 +3863,11 @@ REGEXP-GROUP is the regular expression group in REGEXP to use." (push (buffer-substring-no-properties (match-beginning regexp-group) (match-end regexp-group)) - results)) + results) + (when (zerop (length (match-string 0))) + ;; If the regexp can be empty (for instance, "^.*$"), we + ;; don't advance, so ensure forward progress. + (forward-line 1))) (nreverse results)))) ;; Converting process modes to use comint mode