forked from mirrors/org-mode
org-element: Fix cache bug
* lisp/org-element.el (org-element-cache-reset): Avoid using `org-element--cache-active-p'. (org-element--cache-active-p): Check cache is properly initialized.
This commit is contained in:
parent
2d62c0e173
commit
7c49b7a66c
|
@ -4903,6 +4903,7 @@ This function assumes `org-element--cache' is a valid AVL tree."
|
|||
(defsubst org-element--cache-active-p ()
|
||||
"Non-nil when cache is active in current buffer."
|
||||
(and org-element-use-cache
|
||||
org-element--cache
|
||||
(or (derived-mode-p 'org-mode) orgstruct-mode)))
|
||||
|
||||
(defun org-element--cache-find (pos &optional side)
|
||||
|
@ -5615,7 +5616,8 @@ buffers."
|
|||
(interactive "P")
|
||||
(dolist (buffer (if all (buffer-list) (list (current-buffer))))
|
||||
(with-current-buffer buffer
|
||||
(when (org-element--cache-active-p)
|
||||
(when (and org-element-use-cache
|
||||
(or (derived-mode-p 'org-mode) orgstruct-mode))
|
||||
(org-set-local 'org-element--cache
|
||||
(avl-tree-create #'org-element--cache-compare))
|
||||
(org-set-local 'org-element--cache-objects (make-hash-table :test #'eq))
|
||||
|
|
Loading…
Reference in New Issue