summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBernt Hansen <bernt@norang.ca>2012-02-09 22:43:40 +0000
committerDavid Maus <dmaus@ictsoc.de>2012-02-12 19:44:23 +0100
commitdf0a988a92a4afdc935023e88e50964ce6a852e3 (patch)
tree6e42944bc01717df3fb935d7294ea83dc7f2506c
parent1fd0234a303ec76786ded89b3fc39a81a8fc9af5 (diff)
downloadorg-mode-df0a988a92a4afdc935023e88e50964ce6a852e3.tar.gz
Fix J in agenda when clock out hook clocks in again
* org-clock.el (org-clock-out): Do not delete the current clocking task when org-clock-out-hook clocks in another task My clock out hook keeps the clock running by automatically clocking in a new task (the parent task, or the default task). This sets a new clocking task which was then clobbered at the end of org-clock-out so that J in the agenda would return "No running clock, use `C-c C-x C-j' to jump to the most recent one" We now detect that another task is clocked in and skip clearing the org-clock-current-task variable used by the agenda to determine if the clock is currently running.
-rw-r--r--lisp/org-clock.el3
1 files changed, 2 insertions, 1 deletions
diff --git a/lisp/org-clock.el b/lisp/org-clock.el
index a1df776..7dff094 100644
--- a/lisp/org-clock.el
+++ b/lisp/org-clock.el
@@ -1387,7 +1387,8 @@ If there is no running clock, throw an error, unless FAIL-QUIETLY is set."
(message (concat "Clock stopped at %s after HH:MM = " org-time-clocksum-format "%s") te h m
(if remove " => LINE REMOVED" ""))
(run-hooks 'org-clock-out-hook)
- (org-clock-delete-current))))))
+ (unless (org-clocking-p)
+ (org-clock-delete-current)))))))
(add-hook 'org-clock-out-hook 'org-clock-remove-empty-clock-drawer)