]> git.eshelyaron.com Git - emacs.git/commitdiff
Make compilation-parse-errors more resilient
authorLars Ingebrigtsen <larsi@gnus.org>
Fri, 6 May 2022 12:14:31 +0000 (14:14 +0200)
committerLars Ingebrigtsen <larsi@gnus.org>
Fri, 6 May 2022 12:15:19 +0000 (14:15 +0200)
* lisp/progmodes/compile.el (compilation-parse-errors): Be more
resilient in the presence of regexp alist not being completely set
up (bug#55282).

lisp/progmodes/compile.el

index 6753cf0b0275fe025740f72e30ce479c6a11a69e..2c5f4687ac79995216b4202fdc3b5f9e1208704f 100644 (file)
@@ -1520,7 +1520,8 @@ to `compilation-error-regexp-alist' if RULES is nil."
         ;; FIXME-omake: Doing it here seems wrong, at least it should depend on
         ;; whether or not omake's own error messages are recognized.
         (cond
-         ((not omake-included) nil)
+         ((or (not omake-included) (not pat))
+          nil)
          ((string-match "\\`\\([^^]\\|\\^\\( \\*\\|\\[\\)\\)" pat)
           nil) ;; Not anchored or anchored but already allows empty spaces.
          (t (setq pat (concat "^\\(?:      \\)?" (substring pat 1)))))
@@ -1539,7 +1540,7 @@ to `compilation-error-regexp-alist' if RULES is nil."
           (error "HYPERLINK should be an integer: %s" (nth 5 item)))
 
         (goto-char start)
-        (while (re-search-forward pat end t)
+        (while (and pat (re-search-forward pat end t))
           (when (setq props (compilation-error-properties
                              file line end-line col end-col
                              (or type 2) fmt rule))