From: "Mark A. Hershberger" <mah@everybody.org>
To: emacs-orgmode@gnu.org
Subject: Bug: org-element--cache-sync called after switching buffers [8.3.1 (8.3.1-16-gf6aa53-elpa @ /home/mah/.emacs.d/elpa/org-20150810/)]
Date: Wed, 19 Aug 2015 16:06:41 -0400 [thread overview]
Message-ID: <87oai3yre6.fsf@flynn.nichework.com> (raw)
While composing an email in mu4e, I get the following backtrace. It
looks like this is because mu4e switches buffers between the time
org-element-cache-reset is called and the time that
org-element--cache-sync is called.
Debugger entered--Lisp error: (wrong-type-argument hash-table-p nil)
clrhash(nil)
(if org-element--cache-sync-requests (org-element--cache-set-timer buffer) (clrhash org-element--cache-sync-keys))
(let ((inhibit-quit t) request next) (if org-element--cache-sync-timer (progn (cancel-timer org-element--cache-sync-timer))) (catch (quote interrupt) (while org-element--cache-sync-requests (setq request (car org-element--cache-sync-requests) next (nth 1 org-element--cache-sync-requests)) (org-element--cache-process-request request (and next (aref next 0)) threshold (and (not threshold) (time-add (current-time) org-element-cache-sync-duration)) future-change) (if next (progn (let* ((v next)) (aset v 3 (+ ... ...))) (aset next 2 (aref request 2)))) (setq org-element--cache-sync-requests (cdr org-element--cache-sync-requests)))) (if org-element--cache-sync-requests (org-element--cache-set-timer buffer) (clrhash org-element--cache-sync-keys)))
(save-current-buffer (set-buffer buffer) (let ((inhibit-quit t) request next) (if org-element--cache-sync-timer (progn (cancel-timer org-element--cache-sync-timer))) (catch (quote interrupt) (while org-element--cache-sync-requests (setq request (car org-element--cache-sync-requests) next (nth 1 org-element--cache-sync-requests)) (org-element--cache-process-request request (and next (aref next 0)) threshold (and (not threshold) (time-add (current-time) org-element-cache-sync-duration)) future-change) (if next (progn (let* (...) (aset v 3 ...)) (aset next 2 (aref request 2)))) (setq org-element--cache-sync-requests (cdr org-element--cache-sync-requests)))) (if org-element--cache-sync-requests (org-element--cache-set-timer buffer) (clrhash org-element--cache-sync-keys))))
(progn (save-current-buffer (set-buffer buffer) (let ((inhibit-quit t) request next) (if org-element--cache-sync-timer (progn (cancel-timer org-element--cache-sync-timer))) (catch (quote interrupt) (while org-element--cache-sync-requests (setq request (car org-element--cache-sync-requests) next (nth 1 org-element--cache-sync-requests)) (org-element--cache-process-request request (and next (aref next 0)) threshold (and (not threshold) (time-add ... org-element-cache-sync-duration)) future-change) (if next (progn (let* ... ...) (aset next 2 ...))) (setq org-element--cache-sync-requests (cdr org-element--cache-sync-requests)))) (if org-element--cache-sync-requests (org-element--cache-set-timer buffer) (clrhash org-element--cache-sync-keys)))))
(if (buffer-live-p buffer) (progn (save-current-buffer (set-buffer buffer) (let ((inhibit-quit t) request next) (if org-element--cache-sync-timer (progn (cancel-timer org-element--cache-sync-timer))) (catch (quote interrupt) (while org-element--cache-sync-requests (setq request (car org-element--cache-sync-requests) next (nth 1 org-element--cache-sync-requests)) (org-element--cache-process-request request (and next ...) threshold (and ... ...) future-change) (if next (progn ... ...)) (setq org-element--cache-sync-requests (cdr org-element--cache-sync-requests)))) (if org-element--cache-sync-requests (org-element--cache-set-timer buffer) (clrhash org-element--cache-sync-keys))))))
org-element--cache-sync(#<buffer *draft*>)
apply(org-element--cache-sync #<buffer *draft*>)
byte-code("r\301\b\302H\b\303H\"\210)\301\207" [timer apply 5 6] 4)
timer-event-handler([t 0 0 600000 nil org-element--cache-sync (#<buffer *draft*>) idle 0])
read-from-minibuffer("Identity: " nil (keymap (10 . minibuffer-complete-and-exit) (13 . minibuffer-complete-and-exit) keymap (menu-bar keymap (minibuf "Minibuf" keymap (tab menu-item "Complete" minibuffer-complete :help "Complete as far as possible") (space menu-item "Complete Word" minibuffer-complete-word :help "Complete at most one word") (63 menu-item "List Completions" minibuffer-completion-help :help "Display all possible completions") "Minibuf")) (27 keymap (118 . switch-to-completions)) (prior . switch-to-completions) (63 . minibuffer-completion-help) (32 . minibuffer-complete-word) (9 . minibuffer-complete) keymap (menu-bar keymap (minibuf "Minibuf" keymap (previous menu-item "Previous History Item" previous-history-element :help "Put previous minibuffer history element in the minibuffer") (next menu-item "Next History Item" next-history-element :help "Put next minibuffer history element in the minibuffer") (isearch-backward menu-item "Isearch History Backward" isearch-backward :help "Incrementally search minibuffer history backward") (isearch-forward menu-item "Isearch History Forward" isearch-forward :help "Incrementally search minibuffer history forward") (return menu-item "Enter" exit-minibuffer :key-sequence "." :help "Terminate input and exit minibuffer") (quit menu-item "Quit" abort-recursive-edit :help "Abort input and exit minibuffer") "Minibuf")) (10 . exit-minibuffer) (13 . exit-minibuffer) (7 . abort-recursive-edit) (C-tab . file-cache-minibuffer-complete) (9 . self-insert-command) (XF86Back . previous-history-element) (up . previous-history-element) (prior . previous-history-element) (XF86Forward . next-history-element) (down . next-history-element) (next . next-history-element) (27 keymap (114 . previous-matching-history-element) (115 . next-matching-history-element) (112 . previous-history-element) (110 . next-history-element))) nil nil nil nil)
completing-read-default("Identity: " (("Personal" "" "\"Mark A. Hershberger\" <mah@everybody.org>" "" nil "" "~/.signatures/personal.txt") ("Nichework" "" "\"Mark A. Hershberger\" <mah@nichework.com>" "NicheWork LLC" nil "" "~/.signatures/nichework.txt")) nil t nil nil nil nil)
completing-read("Identity: " (("Personal" "" "\"Mark A. Hershberger\" <mah@everybody.org>" "" nil "" "~/.signatures/personal.txt") ("Nichework" "" "\"Mark A. Hershberger\" <mah@nichework.com>" "NicheWork LLC" nil "" "~/.signatures/nichework.txt")) nil t)
gnus-alias-identity-prompt()
#[nil "\301\302!\210\303\304!\205.\0\304 .\305\b!)\207" [identity visual-line-mode -1 fboundp gnus-alias-identity-prompt gnus-alias-use-identity] 2]()
run-hooks(change-major-mode-after-body-hook text-mode-hook message-mode-hook mu4e-compose-mode-hook)
apply(run-hooks (change-major-mode-after-body-hook text-mode-hook message-mode-hook mu4e-compose-mode-hook))
run-mode-hooks(mu4e-compose-mode-hook)
mu4e-compose-mode()
(catch (quote --cl-block-mu4e~compose-handler--) (set (make-local-variable (quote mu4e-compose-parent-message)) original-msg) (put (quote mu4e-compose-parent-message) (quote permanent-local) t) (run-hooks (quote mu4e-compose-pre-hook)) (condition-case nil (mu4e-draft-open compose-type original-msg) (quit (kill-buffer) (message "[mu4e] Operation aborted") (throw (quote --cl-block-mu4e~compose-handler--) nil))) (mu4e~draft-insert-mail-header-separator) (save-excursion (goto-char (point-max)) (let ((--dolist-tail-- includes) att) (while --dolist-tail-- (setq att (car --dolist-tail--)) (mml-attach-file (plist-get att :file-name) (plist-get att :mime-type)) (setq --dolist-tail-- (cdr --dolist-tail--))))) (mu4e~compose-set-friendly-buffer-name compose-type) (set-buffer-modified-p nil) (if (member compose-type (quote (new forward))) (message-goto-to) (message-goto-body)) (set (make-local-variable (quote mu4e-compose-parent-message)) original-msg) (put (quote mu4e-compose-parent-message) (quote permanent-local) t) (mu4e~compose-hide-headers) (mu4e-compose-mode))
mu4e~compose-handler(new)
(if (eq compose-type (quote new)) (mu4e~compose-handler (quote new)) (let* ((docid (mu4e-message-field msg :docid)) (decrypt (and (member (quote encrypted) (mu4e-message-field msg :flags)) (if (eq mu4e-decryption-policy (quote ask)) (yes-or-no-p (mu4e-format "Decrypt message?")) mu4e-decryption-policy)))) (let ((viewwin (get-buffer-window mu4e~view-buffer))) (if (window-live-p viewwin) (progn (select-window viewwin)))) (mu4e~proc-compose compose-type decrypt docid)))
(let ((msg (mu4e-message-at-point (quote noerror)))) (if (or msg (eq compose-type (quote new))) nil (mu4e-warn "No message at point")) (if (member compose-type (quote (reply forward edit new))) nil (mu4e-error "Invalid compose type '%S'" compose-type)) (if (and (eq compose-type (quote edit)) (not (member (quote draft) (mu4e-message-field msg :flags)))) (progn (mu4e-warn "Editing is only allowed for draft messages"))) (if (eq compose-type (quote new)) (mu4e~compose-handler (quote new)) (let* ((docid (mu4e-message-field msg :docid)) (decrypt (and (member (quote encrypted) (mu4e-message-field msg :flags)) (if (eq mu4e-decryption-policy ...) (yes-or-no-p ...) mu4e-decryption-policy)))) (let ((viewwin (get-buffer-window mu4e~view-buffer))) (if (window-live-p viewwin) (progn (select-window viewwin)))) (mu4e~proc-compose compose-type decrypt docid))))
mu4e-compose(new)
mu4e-compose-new()
call-interactively(mu4e-compose-new nil nil)
command-execute(mu4e-compose-new)
Emacs : GNU Emacs 24.5.1 (x86_64-pc-linux-gnu, GTK+ Version 3.16.4)
of 2015-06-28 on trouble, modified by Debian
Package: Org-mode version 8.3.1 (8.3.1-16-gf6aa53-elpa @ /home/mah/.emacs.d/elpa/org-20150810/)
current state:
==============
(setq
org-hide-leading-stars t
org-tab-first-hook '(org-hide-block-toggle-maybe org-babel-hide-result-toggle-maybe
org-babel-header-arg-expand)
org-follow-link-hook '((lambda nil
(when (eq major-mode (quote gnus-summary-mode))
(gnus-summary-insert-dormant-articles))
)
)
org-speed-command-hook '(org-speed-command-default-hook org-babel-speed-command-hook)
org-gnus-prefer-web-links t
org-reverse-note-order t
org-occur-hook '(org-first-headline-recenter)
org-metaup-hook '(org-babel-load-in-session-maybe)
org-agenda-start-on-weekday nil
org-clock-into-drawer 3
org-confirm-shell-link-function 'yes-or-no-p
org-clock-out-switch-to-state "WAIT"
org-startup-folded 'content
org-special-ctrl-a/e t
org-agenda-skip-scheduled-if-done t
org-agenda-custom-commands '(("a" "My custom agenda"
((org-agenda-list nil nil 1) (sacha/org-agenda-load)
(sacha/org-agenda-clock) (tags "PROJECT-WAITING")
(tags-todo "WAITING") (tags-todo "-MAYBE"))
)
("c" todo #("DONE|DEFERRED|CANCELLED" 0 23 (face org-warning)) nil)
("w" todo #("WAITING" 0 7 (face org-warning)) nil)
("W" agenda "" ((org-agenda-ndays 21)))
("A" agenda ""
((org-agenda-skip-function
(lambda nil
(org-agenda-skip-entry-if (quote notregexp) "\\=.*\\[#A\\]"))
)
(org-agenda-ndays 1)
(org-agenda-overriding-header "Today's Priority #A tasks: "))
)
("u" alltodo ""
((org-agenda-skip-function
(lambda nil
(org-agenda-skip-entry-if (quote scheduled) (quote deadline)
(quote regexp) "<[^>\n]+>")
)
)
(org-agenda-overriding-header "Unscheduled TODO entries: "))
)
)
org-default-notes-file "~/org/notes.org"
org-todo-keyword-faces '(("TODO" :foreground "blue" :weight bold))
org-capture-templates '(("t" "Task" entry (file+headline "~/org/notes.org" "Tasks")
"* TODO %?\n %u\n %a" :prepend t)
("j" "Journal Entry" entry (file "~/org/journal.org")
"* Journal Entry at %U %^{Title}p\n:PROPERTIES:\n:Timestamp: %T\n:END:"
:prepend t)
)
org-agenda-include-diary t
org-startup-indented t
org-after-todo-state-change-hook '(org-clock-out-if-current)
org-src-mode-hook '(org-src-babel-configure-edit-buffer org-src-mode-configure-edit-buffer)
org-tags-column -132
org-agenda-before-write-hook '(org-agenda-add-entry-text)
org-babel-pre-tangle-hook '(save-buffer)
org-mode-hook '(org-clock-load
#[nil "\300\301\302\303\304$\207"
[org-add-hook change-major-mode-hook org-show-block-all append local] 5]
#[nil "\300\301\302\303\304$\207"
[org-add-hook change-major-mode-hook org-babel-show-result-all append local] 5]
org-babel-result-hide-spec org-babel-hide-all-hashes org-bullets-mode)
org-fontify-done-headline t
org-archive-hook '(org-attach-archive-delete-maybe)
org-clock-persist t
org-ctrl-c-ctrl-c-hook '(org-babel-hash-at-point org-babel-execute-safely-maybe)
org-clock-auto-clock-resolution t
org-clock-in-switch-to-state "INPROGRESS"
org-cycle-hook '(org-cycle-hide-archived-subtrees org-cycle-hide-drawers org-cycle-show-empty-lines
org-optimize-window-after-visibility-change)
org-archive-location "archive/%s_archive::"
org-todo-keywords '((sequence "TODO" "INPROGRESS(i!/!)" "WAIT(w)" "|" "CANCELED(@)" "DONE(@)"))
org-agenda-ndays 7
org-fast-tag-selection-single-key 'expert
org-confirm-elisp-link-function 'yes-or-no-p
org-metadown-hook '(org-babel-pop-to-session-maybe)
org-agenda-skip-deadline-if-done t
org-babel-load-languages '((dot . t))
org-clock-sound t
org-agenda-files '("~/home-files/org")
org-clock-out-hook '(org-clock-remove-empty-clock-drawer)
org-confirm-babel-evaluate nil
org-clock-out-remove-zero-time-clocks t
)
next reply other threads:[~2015-08-19 20:06 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-08-19 20:06 Mark A. Hershberger [this message]
2015-08-21 15:20 ` Bug: org-element--cache-sync called after switching buffers [8.3.1 (8.3.1-16-gf6aa53-elpa @ /home/mah/.emacs.d/elpa/org-20150810/)] Nicolas Goaziou
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87oai3yre6.fsf@flynn.nichework.com \
--to=mah@everybody.org \
--cc=emacs-orgmode@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.