emacs-orgmode
[Top][All Lists]
Advanced

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

[O] [PATCH] Avoid modification hooks in org-clock-sum


From: Francesco Pizzolante
Subject: [O] [PATCH] Avoid modification hooks in org-clock-sum
Date: Thu, 31 Jan 2013 10:38:01 +0100
User-agent: Gnus/5.130004 (Ma Gnus v0.4) Emacs/24.2 (windows-nt)

Hello,

This patch avoid modification hooks to be run in org-clock-sum by using
org-unmodified (instead of simply saving and restoring buffer-modified-p).

On my system, this speeds up the creation of clock reports.

I should have indented the code but I didn't in order to respect the
less-than-20-lines change (I have no copyright assignment to the FSF yet).

Regards,
 Francesco

>From b328fadfbc76143ab86286f8a9939fa2c49ba186 Mon Sep 17 00:00:00 2001
From: Francesco Pizzolante <address@hidden>
Date: Wed, 30 Jan 2013 17:21:42 +0100
Subject: [PATCH] Avoid Protect org-clock-sum using org-unmodified

* org-clock.el (org-clock-sum): Avoid modification hooks in org-clock-sum

TINYCHANGE
---
 lisp/org-clock.el |    7 +++----
 1 files changed, 3 insertions(+), 4 deletions(-)

diff --git a/lisp/org-clock.el b/lisp/org-clock.el
index 7bd5b5a..945fcd0 100644
--- a/lisp/org-clock.el
+++ b/lisp/org-clock.el
@@ -1675,8 +1675,8 @@ each headline in the time range with point at the 
headline.  Headlines for
 which HEADLINE-FILTER returns nil are excluded from the clock summation.
 PROPNAME lets you set a custom text property instead of :org-clock-minutes."
   (interactive)
-  (let* ((bmp (buffer-modified-p))
-        (re (concat "^\\(\\*+\\)[ \t]\\|^[ \t]*"
+  (org-unmodified
+    (let* ((re (concat "^\\(\\*+\\)[ \t]\\|^[ \t]*"
                     org-clock-string
                     "[ \t]*\\(?:\\(\\[.*?\\]\\)-+\\(\\[.*?\\]\\)\\|=>[ 
\t]+\\([0-9]+\\):\\([0-9]+\\)\\)"))
         (lmax 30)
@@ -1753,8 +1753,7 @@ PROPNAME lets you set a custom text property instead of 
:org-clock-minutes."
              (setq t1 0)
              (loop for l from level to (1- lmax) do
                    (aset ltimes l 0)))))))
-      (setq org-clock-file-total-minutes (aref ltimes 0)))
-    (set-buffer-modified-p bmp)))
+       (setq org-clock-file-total-minutes (aref ltimes 0))))))
 
 (defun org-clock-sum-current-item (&optional tstart)
   "Return time, clocked on current item in total."
-- 
1.7.9



reply via email to

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