diff options
author | Bernt Hansen <bernt@norang.ca> | 2012-02-09 22:43:40 +0000 |
---|---|---|
committer | David Maus <dmaus@ictsoc.de> | 2012-02-12 19:44:23 +0100 |
commit | df0a988a92a4afdc935023e88e50964ce6a852e3 (patch) | |
tree | 6e42944bc01717df3fb935d7294ea83dc7f2506c | |
parent | 1fd0234a303ec76786ded89b3fc39a81a8fc9af5 (diff) | |
download | org-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.el | 3 |
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) |