emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[O] [PATCH] Fix (wrong-type-argument integer-or-marker-p nil) in org-age


From: Adam Spiers
Subject: [O] [PATCH] Fix (wrong-type-argument integer-or-marker-p nil) in org-agenda-get-todos.
Date: Sun, 4 Mar 2012 23:47:14 +0000
User-agent: Mutt/1.5.21 (2010-09-15)

org-get-category can sometimes invoke org-refresh-category-properties
which can perform a re-search-forward which destroys the existing
match data.  When called from org-agenda-get-todos, this can result in
its subsequent call to (match-beginning 2) to return nil, which when
passed as the first parameter to buffer-string causes the above error.
---
 lisp/org-agenda.el |    9 +++++----
 1 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/lisp/org-agenda.el b/lisp/org-agenda.el
index ac1b5b1..4efb332 100644
--- a/lisp/org-agenda.el
+++ b/lisp/org-agenda.el
@@ -4664,10 +4664,11 @@ the documentation of `org-diary'."
            (or org-agenda-todo-list-sublevels (org-end-of-subtree 'invisible))
            (throw :skip nil)))
        (goto-char (match-beginning 2))
-       (setq marker (org-agenda-new-marker (match-beginning 0))
-             category (org-get-category)
-             org-category-pos (get-text-property (point) 
'org-category-position)
-             txt (org-trim
+       (setq marker (org-agenda-new-marker (match-beginning 0)))
+       (save-match-data
+         (setq category (org-get-category)
+               org-category-pos (get-text-property (point) 
'org-category-position)))
+       (setq txt (org-trim
                   (buffer-substring (match-beginning 2) (match-end 0)))
              tags (org-get-tags-at (point))
              txt (org-agenda-format-item "" txt category tags)
-- 
1.7.8.206.g71406




reply via email to

[Prev in Thread] Current Thread [Next in Thread]