From 5beeb4446f14cd72e1a08c8da22d1b1a05cb6a04 Mon Sep 17 00:00:00 2001 From: Juri Linkov Date: Sun, 3 May 2026 18:38:43 +0300 Subject: [PATCH] * lisp/treesit.el (treesit-outline-level): Add guard condition. --- lisp/treesit.el | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/lisp/treesit.el b/lisp/treesit.el index 4579d416f34..baebdbb31dc 100644 --- a/lisp/treesit.el +++ b/lisp/treesit.el @@ -4454,12 +4454,14 @@ For BOUND, MOVE, BACKWARD, LOOKING-AT, see the descriptions in (setq level (1+ level))) ;; Continue counting the host nodes. - (dolist (parser (mapcar #'cdr (treesit-parsers-at (point) nil t '(global local)))) - (let* ((node (treesit-node-at (point) parser)) - (lang (treesit-parser-language parser)) - (pred (alist-get lang treesit-aggregated-outline-predicate))) - (while (setq node (treesit-parent-until node pred)) - (setq level (1+ level))))) + (when treesit-aggregated-outline-predicate + (dolist (parser (mapcar #'cdr (treesit-parsers-at + (point) nil t '(global local)))) + (let* ((node (treesit-node-at (point) parser)) + (lang (treesit-parser-language parser)) + (pred (alist-get lang treesit-aggregated-outline-predicate))) + (while (setq node (treesit-parent-until node pred)) + (setq level (1+ level)))))) level))