summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBastien Guerry <bzg@altern.org>2013-01-08 18:39:45 +0100
committerBastien Guerry <bzg@altern.org>2013-01-08 18:39:45 +0100
commit4cac751536e9e75f822fae18d75de6df694c8f6f (patch)
tree28f393e929d031761e0e466c62acc18f3d610297
parenta5815f3f5b89d5b064af890f42fe09cb156c3959 (diff)
downloadorg-mode-cd5a0cd0b4985df885bb5c6e75c08f1edaaa27c7.tar.gz
org-agenda.el (org-agenda-finalize): Inhibit readonly for the whole functionrelease_7.9.3a
* org-agenda.el (org-agenda-finalize): Inhibit readonly for the whole function. Thanks to J. David Boyd for hitting this bug and reporting it.
-rw-r--r--lisp/org-agenda.el87
1 files changed, 43 insertions, 44 deletions
diff --git a/lisp/org-agenda.el b/lisp/org-agenda.el
index d74444c..2eb96c2 100644
--- a/lisp/org-agenda.el
+++ b/lisp/org-agenda.el
@@ -3544,50 +3544,49 @@ generating a new one."
(unless (eq org-agenda-remove-tags t)
(org-agenda-align-tags))
(unless org-agenda-with-colors
- (remove-text-properties (point-min) (point-max) '(face nil))))
- (if (and (boundp 'org-agenda-overriding-columns-format)
- org-agenda-overriding-columns-format)
- (org-set-local 'org-agenda-overriding-columns-format
- org-agenda-overriding-columns-format))
- (if (and (boundp 'org-agenda-view-columns-initially)
- org-agenda-view-columns-initially)
- (org-agenda-columns))
- (when org-agenda-fontify-priorities
- (org-agenda-fontify-priorities))
- (when (and org-agenda-dim-blocked-tasks org-blocker-hook)
- (org-agenda-dim-blocked-tasks))
- ;; We need to widen when `org-agenda-finalize' is called from
- ;; `org-agenda-change-all-lines' (e.g. in `org-agenda-clock-in')
- (when org-clock-current-task
- (save-restriction
- (widen)
- (org-agenda-mark-clocking-task)))
- (when org-agenda-entry-text-mode
- (org-agenda-entry-text-hide)
- (org-agenda-entry-text-show))
- (if (and (functionp 'org-habit-insert-consistency-graphs)
- (save-excursion (next-single-property-change (point-min) 'org-habit-p)))
- (org-habit-insert-consistency-graphs))
- (setq org-agenda-type (org-get-at-bol 'org-agenda-type))
- (when (delq nil (mapcar (lambda (tp) (org-agenda-check-type nil tp))
- org-agenda-use-tag-inheritance))
- (let (mrk)
- (save-excursion
- (goto-char (point-min))
- (while (equal (forward-line) 0)
- (when (setq mrk (or (get-text-property (point) 'org-hd-marker)
- (get-text-property (point) 'org-hd-marker)))
- (put-text-property (point-at-bol) (point-at-eol)
- 'tags (org-with-point-at mrk
- (delete-dups
- (mapcar 'downcase (org-get-tags-at))))))))))
- (let ((inhibit-read-only t))
- (run-hooks 'org-agenda-finalize-hook))
- (when (or org-agenda-tag-filter (get 'org-agenda-tag-filter :preset-filter))
- (org-agenda-filter-apply org-agenda-tag-filter 'tag))
- (when (or org-agenda-category-filter (get 'org-agenda-category-filter :preset-filter))
- (org-agenda-filter-apply org-agenda-category-filter 'category))
- (org-add-hook 'kill-buffer-hook 'org-agenda-reset-markers 'append 'local))))
+ (remove-text-properties (point-min) (point-max) '(face nil)))
+ (if (and (boundp 'org-agenda-overriding-columns-format)
+ org-agenda-overriding-columns-format)
+ (org-set-local 'org-agenda-overriding-columns-format
+ org-agenda-overriding-columns-format))
+ (if (and (boundp 'org-agenda-view-columns-initially)
+ org-agenda-view-columns-initially)
+ (org-agenda-columns))
+ (when org-agenda-fontify-priorities
+ (org-agenda-fontify-priorities))
+ (when (and org-agenda-dim-blocked-tasks org-blocker-hook)
+ (org-agenda-dim-blocked-tasks))
+ ;; We need to widen when `org-agenda-finalize' is called from
+ ;; `org-agenda-change-all-lines' (e.g. in `org-agenda-clock-in')
+ (when org-clock-current-task
+ (save-restriction
+ (widen)
+ (org-agenda-mark-clocking-task)))
+ (when org-agenda-entry-text-mode
+ (org-agenda-entry-text-hide)
+ (org-agenda-entry-text-show))
+ (if (and (functionp 'org-habit-insert-consistency-graphs)
+ (save-excursion (next-single-property-change (point-min) 'org-habit-p)))
+ (org-habit-insert-consistency-graphs))
+ (setq org-agenda-type (org-get-at-bol 'org-agenda-type))
+ (when (delq nil (mapcar (lambda (tp) (org-agenda-check-type nil tp))
+ org-agenda-use-tag-inheritance))
+ (let (mrk)
+ (save-excursion
+ (goto-char (point-min))
+ (while (equal (forward-line) 0)
+ (when (setq mrk (or (get-text-property (point) 'org-hd-marker)
+ (get-text-property (point) 'org-hd-marker)))
+ (put-text-property (point-at-bol) (point-at-eol)
+ 'tags (org-with-point-at mrk
+ (delete-dups
+ (mapcar 'downcase (org-get-tags-at))))))))))
+ (run-hooks 'org-agenda-finalize-hook)
+ (when (or org-agenda-tag-filter (get 'org-agenda-tag-filter :preset-filter))
+ (org-agenda-filter-apply org-agenda-tag-filter 'tag))
+ (when (or org-agenda-category-filter (get 'org-agenda-category-filter :preset-filter))
+ (org-agenda-filter-apply org-agenda-category-filter 'category))
+ (org-add-hook 'kill-buffer-hook 'org-agenda-reset-markers 'append 'local)))))
(defun org-agenda-mark-clocking-task ()
"Mark the current clock entry in the agenda if it is present."