Skip to content

Commit 3c11e9d

Browse files
committed
org-element-cache-map: Do not refresh cache before processing
* lisp/org-element.el (org-element-cache-map--recurse): Remove. (org-element-cache-map): Do not perform a cache-filling pass. This is not gaining any speed in practice.
1 parent dd0a723 commit 3c11e9d

File tree

1 file changed

+0
-23
lines changed

1 file changed

+0
-23
lines changed

lisp/org-element.el

Lines changed: 0 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -7273,7 +7273,6 @@ buffers."
72737273

72747274
(defvar warning-minimum-log-level) ; Defined in warning.el
72757275

7276-
(defvar org-element-cache-map--recurse nil)
72777276
(defvar org-element-cache-map-continue-from nil
72787277
"Position from where mapping should continue.
72797278
This variable can be set by called function, especially when the
@@ -7554,28 +7553,6 @@ the cache."
75547553
(goto-char (or start (point-min)))
75557554
(move-start-to-next-match next-element-re)
75567555
(unless (and start (>= start to-pos))
7557-
;; Pre-process cache filling all the gaps.
7558-
(unless (or org-element-cache-map--recurse
7559-
(cache-gapless-p)
7560-
;; Pre-processing all the elements in large
7561-
;; buffers when NEXT-RE/FAIL-RE are provided
7562-
;; may be much slower compared to using
7563-
;; regexp.
7564-
(and (eq granularity 'element)
7565-
(or next-re fail-re)))
7566-
(let ((org-element-cache-map--recurse t))
7567-
(setq before-time (float-time))
7568-
(org-element-cache-map
7569-
#'ignore
7570-
:granularity granularity)
7571-
(cl-incf pre-process-time
7572-
(- (float-time)
7573-
before-time))
7574-
;; Re-assign the cache root after filling the cache
7575-
;; gaps.
7576-
(setq node (cache-root)))
7577-
(setf (alist-get granularity org-element--cache-gapless)
7578-
org-element--cache-change-tic))
75797556
(while node
75807557
(setq data (avl-tree--node-data node))
75817558
(if (and leftp (avl-tree--node-left node) ; Left branch.

0 commit comments

Comments
 (0)