From c1a744659d2b44c067ecb195b3e5d51e837bddd1 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Tue, 31 Mar 2015 15:57:54 +0200 Subject: [PATCH] Fix "Before first headline" error in `org-refresh-property' * lisp/org.el (org-refresh-property): Ignore function when before first headline or inlinetask. Small refactoring. Reported-by: Nick Dokos --- lisp/org.el | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/lisp/org.el b/lisp/org.el index 4f611230b..f0eb36ef0 100755 --- a/lisp/org.el +++ b/lisp/org.el @@ -9523,20 +9523,20 @@ the value of the drawer property." (defun org-refresh-property (tprop p) "Refresh the buffer text property TPROP from the drawer property P. The refresh happens only for the current tree (not subtree)." - (save-excursion - (org-back-to-heading t) - ;; tprop is a text property symbol - (if (symbolp tprop) - (put-text-property - (point) (or (outline-next-heading) (point-max)) tprop p) - ;; tprop is an alist with (properties . function) elements - (mapc (lambda(al) - (save-excursion - (put-text-property - (point-at-bol) (or (outline-next-heading) (point-max)) - (car al) - (funcall (cdr al) p)))) - tprop)))) + (unless (org-before-first-heading-p) + (save-excursion + (org-back-to-heading t) + (if (symbolp tprop) + ;; TPROP is a text property symbol + (put-text-property + (point) (or (outline-next-heading) (point-max)) tprop p) + ;; TPROP is an alist with (properties . function) elements + (dolist (al tprop) + (save-excursion + (put-text-property + (line-beginning-position) (or (outline-next-heading) (point-max)) + (car al) + (funcall (cdr al) p)))))))) (defun org-refresh-category-properties () "Refresh category text properties in the buffer."