Re: [Orgmode] Re: TODO state change from TODO to DONE blocked

2011-02-26 Thread Bastien
Hi Sébastien,

 I've a really weird exception occurring: change state from TODO to DONE is
 blocked... while I'm on a leaf of the Org tree!?

 Debugger entered--Lisp error: (error #(TODO state change from TODO to
 DONE blocked 23 27 (face org-todo) 31 35 (face org-done)))

Are you using `org-blocker-hook' or `org-trigger-hook'?

Maybe you can try to `edebug-defun' the `org-todo' function and follow
it's execution step by step.

Let us know.

-- 
 Bastien

___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


[Orgmode] Re: TODO state change from TODO to DONE blocked

2011-02-24 Thread Sébastien Vauban
Hi,

Sébastien Vauban wrote:
 I've a really weird exception occurring: change state from TODO to DONE is
 blocked... while I'm on a leaf of the Org tree!?

 Debugger entered--Lisp error: (error #(TODO state change from TODO to DONE 
 blocked 23 27 (face org-todo) 31 35 (face org-done)))
   signal(error (#(TODO state change from TODO to DONE blocked 23 27 (face 
 org-todo) 31 35 (face org-done
   error(TODO state change from %s to %s blocked #(TODO 0 4 (face 
 org-todo)) #(DONE 0 4 (face org-done)))
   (if (interactive-p) (error TODO state change from %s to %s blocked this 
 state) (message TODO state change from %s to %s blocked this state) (throw 
 (quote exit) nil))
   (if (save-excursion (save-match-data ...)) nil (if (interactive-p) (error 
 TODO state change from %s to %s blocked this state) (message TODO state 
 change from %s to %s blocked this state) (throw ... nil)))
   (unless (save-excursion (save-match-data ...)) (if (interactive-p) (error 
 TODO state change from %s to %s blocked this state) (message TODO state 
 change from %s to %s blocked this state) (throw ... nil)))
   (progn (setq org-last-todo-state-is-todo (not ...)) (unless (save-excursion 
 ...) (if ... ... ... ...)))
   (if org-blocker-hook (progn (setq org-last-todo-state-is-todo ...) (unless 
 ... ...)))
   (when org-blocker-hook (setq org-last-todo-state-is-todo (not ...)) (unless 
 (save-excursion ...) (if ... ... ... ...)))
   (let* ((match-data ...) (startpos ...) (logging ...) (org-log-done 
 org-log-done) (org-log-repeat org-log-repeat) (org-todo-log-states 
 org-todo-log-states) (this ...) (hl-pos ...) (head ...) (ass ...) (interpret 
 ...) (done-word ...) (final-done-word ...) (last-state ...) 
 (completion-ignore-case t) (member ...) (tail ...) (state ...) (state ...) 
 (next ...) (change-plist ...) dolog now-done-p) (when org-blocker-hook (setq 
 org-last-todo-state-is-todo ...) (unless ... ...)) (store-match-data 
 match-data) (replace-match next t t) (unless (pos-visible-in-window-p hl-pos) 
 (message TODO state changed to %s ...)) (unless head (setq head ... ass ... 
 interpret ... done-word ... final-done-word ...)) (when (memq arg ...) 
 (message Keyword-Set %d/%d: %s ... ... ...)) (setq 
 org-last-todo-state-is-todo (not ...)) (setq now-done-p (and ... ...)) (and 
 logging (org-local-logging logging)) (when (and ... ... ...) (setq dolog ...) 
 (if ... ...) (when ... ...) (when ... ... ...) (when ... ...)) 
 (org-todo-trigger-tag-changes state) (and org-auto-align-tags (not 
 org-setting-tags) (org-set-tags nil t)) (when org-provide-todo-statistics 
 (org-update-parent-todo-statistics)) (run-hooks (quote 
 org-after-todo-state-change-hook)) (if (and arg ...) (setq head ...)) 
 (put-text-property (point-at-bol) (point-at-eol) (quote org-todo-head) head) 
 (when now-done-p (when ... ...) (org-auto-repeat-maybe state)) (if (and ... 
 ... ... ...) (progn ... ...)) (when org-trigger-hook (save-excursion ...)))
   (catch (quote exit) (org-back-to-heading t) (if (looking-at outline-regexp) 
 (goto-char ...)) (or (looking-at ...) (looking-at  *)) (let* (... ... ... 
 ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... dolog 
 now-done-p) (when org-blocker-hook ... ...) (store-match-data match-data) 
 (replace-match next t t) (unless ... ...) (unless head ...) (when ... ...) 
 (setq org-last-todo-state-is-todo ...) (setq now-done-p ...) (and logging 
 ...) (when ... ... ... ... ... ...) (org-todo-trigger-tag-changes state) (and 
 org-auto-align-tags ... ...) (when org-provide-todo-statistics ...) 
 (run-hooks ...) (if ... ...) (put-text-property ... ... ... head) (when 
 now-done-p ... ...) (if ... ...) (when org-trigger-hook ...)))
   (save-excursion (catch (quote exit) (org-back-to-heading t) (if ... ...) 
 (or ... ...) (let* ... ... ... ... ... ... ... ... ... ... ... ... ... ... 
 ... ... ... ... ... ...)))
   (let ((org-blocker-hook org-blocker-hook) (case-fold-search nil)) (when 
 (equal arg ...) (setq arg nil org-blocker-hook nil)) (when (and 
 org-blocker-hook ...) (setq org-blocker-hook nil)) (save-excursion (catch ... 
 ... ... ... ...)))
   org-todo(nil)
   call-interactively(org-todo)
   (cond ((commandp org-speed-command) (setq this-command org-speed-command) 
 (call-interactively org-speed-command)) ((functionp org-speed-command) 
 (funcall org-speed-command)) ((and org-speed-command ...) (eval 
 org-speed-command)) (t (let ... ...)))
   (cond ((and org-use-speed-commands ...) (cond ... ... ... ...)) ((and ... 
 ... ... ...) (let ... ... ... ... ...)) (t (setq org-table-may-need-update t) 
 (self-insert-command N) (org-fix-tags-on-the-fly) (if 
 org-self-insert-cluster-for-undo ...)))
   org-self-insert-command(1)
   call-interactively(org-self-insert-command nil nil)

 I absolutely don't understand which conditions are met for provoking that
 strange reaction.

 Taking that leaf and putting it in a blanco Org file allows me to do the state
 change. So, it's not related to the headline