Browse Source

org-agenda: Fix effort filtering for entries with tags

* lisp/org-agenda.el (org-agenda-compare-effort): Fix retrieval of
  `effort-minutes' property from entries with tags.

Reported-by: wtm <wtmonroe.ls@gmail.com>
<http://permalink.gmane.org/gmane.emacs.orgmode/111194>
Nicolas Goaziou 8 years ago
parent
commit
8318957da5
1 changed files with 5 additions and 2 deletions
  1. 5 2
      lisp/org-agenda.el

+ 5 - 2
lisp/org-agenda.el

@@ -7713,8 +7713,11 @@ E looks like \"+<2:25\"."
 (defun org-agenda-compare-effort (op value)
 (defun org-agenda-compare-effort (op value)
   "Compare the effort of the current line with VALUE, using OP.
   "Compare the effort of the current line with VALUE, using OP.
 If the line does not have an effort defined, return nil."
 If the line does not have an effort defined, return nil."
-  (let ((eff (org-get-at-eol 'effort-minutes 1)))
-    (funcall op (or eff (if org-sort-agenda-noeffort-is-high 32767 -1))
+  ;; `effort-minutes' property cannot be extracted directly from
+  ;; current line but is stored as a property in `txt'.
+  (let ((effort (get-text-property 0 'effort-minutes (org-get-at-bol 'txt))))
+    (funcall op
+	     (or effort (if org-sort-agenda-noeffort-is-high 32767 -1))
 	     value)))
 	     value)))
 
 
 (defun org-agenda-filter-expand-tags (filter &optional no-operator)
 (defun org-agenda-filter-expand-tags (filter &optional no-operator)