Sorry for the late reply. Thanks for the advice Nicolas. Today I tried to reproduce it with the same file and couldn't. However, I have hit the bug (whatever it is) without org-log-done 'time, so I guess that was a red herring. I'll keep an eye on it. Ethan On Fri, Jul 18, 2014 at 3:50 AM, Nicolas Goaziou wrote: > Hello, > > Ethan writes: > > > I'm running org-mode from git (version "8.3beta"), and recently I started > > to get hangs in org files. > > First ensure you're using the latest Org revision. A lot of changes > happened between "release_8.3beta" tag and HEAD. > > > The bug has been tricky to track down. I can reproduce it reliably in one > > particular file by switching DONE to TODO on one particular heading. > > Changing DONE to TODO on another nearby heading doesn't seem to cause the > > problem. For this reason, I don't have a minimal example. > > > > It doesn't happen in org-mode in stock emacs. It also doesn't happen, > even > > with org-mode from git, if I disable my '(org-log-done 'time) > > customization. I managed to get a backtrace using gdb (attached). I can > > provide (off-list) the .org file that I used to induce the failure. > > If you can reproduce the problem with an up-to-date Org, I'm interested > in the org file. You can also consider calling the function below first > > (defun ngz-scramble-contents () > "Copy current buffer, preserving structure but not contents. > The copy is done in \"*Scrambled text*\" buffer. The function > assumes current major mode is `org-mode'." > (interactive) > (let ((tree (org-element-parse-buffer))) > (org-element-map tree '(code comment comment-block example-block > fixed-width > keyword link node-property plain-text > verbatim) > (lambda (obj) > (case (org-element-type obj) > ((code comment comment-block example-block fixed-width keyword > node-property verbatim) > (let ((value (org-element-property :value obj))) > (org-element-put-property > obj :value (replace-regexp-in-string "[[:alnum:]]" "x" > value)))) > (link > (unless (string= (org-element-property :type obj) "radio") > (org-element-put-property obj :raw-link "http://orgmode.org > "))) > (plain-text > (org-element-set-element > obj (replace-regexp-in-string "[[:alnum:]]" "x" obj))))) > nil nil nil t) > (let ((buffer (get-buffer-create "*Scrambled text*"))) > (with-current-buffer buffer > (insert (org-element-interpret-data tree)) > (goto-char (point-min))) > (switch-to-buffer buffer)))) > > > Regards, > > -- > Nicolas Goaziou >