emacs-diffs
[Top][All Lists]
Advanced

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

master 93136b9: Parse the whole buffer at once in compile.el


From: Lars Ingebrigtsen
Subject: master 93136b9: Parse the whole buffer at once in compile.el
Date: Fri, 14 Aug 2020 10:23:21 -0400 (EDT)

branch: master
commit 93136b980ade2bdd1053128ce103c7ac53a2ad0e
Author: Jonas Bernoulli <jonas@bernoul.li>
Commit: Lars Ingebrigtsen <larsi@gnus.org>

    Parse the whole buffer at once in compile.el
    
    * lisp/progmodes/compile.el (compilation-next-single-property-change):
    Parse whole buffer at once (bug#42806).
    
    Also remove the comment that mentioned that it is an option to do it
    in one go as we now actually start doing.  As the existence of that
    comment suggested, there is not really a reason to process the buffer
    in small chunks.  On the contrary, processing the output in arbitrary
    units can result in certain constructs not being recognized because
    they begin in one arbitrary chunk, while ending in another.
---
 lisp/progmodes/compile.el | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/lisp/progmodes/compile.el b/lisp/progmodes/compile.el
index 3106c61..a043bbc 100644
--- a/lisp/progmodes/compile.el
+++ b/lisp/progmodes/compile.el
@@ -2417,12 +2417,9 @@ and runs `compilation-filter-hook'."
                                                 &optional object limit)
   (let (parsed res)
     (while (progn
-             ;; We parse the buffer here "on-demand" by chunks of 500 chars.
-             ;; But we could also just parse the whole buffer.
              (compilation--ensure-parse
               (setq parsed (max compilation--parsed
-                                (min (+ position 500)
-                                     (or limit (point-max))))))
+                                (or limit (point-max)))))
              (and (or (not (setq res (next-single-property-change
                                       position prop object limit)))
                       (eq res limit))



reply via email to

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