emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Orgmode] Re: [bug]org-mode with flyspell-mode freezes emacs


From: Leo
Subject: [Orgmode] Re: [bug]org-mode with flyspell-mode freezes emacs
Date: Thu, 12 Oct 2006 17:57:52 +0100
User-agent: Gnus/5.11 (Gnus v5.11) Emacs/23.0.0 (gnu/linux)

Here is a bug report and feedback from org-mode author Carsten Dominik.

------------------
On Thu, 12/10/06 03:10 +0100, Leo wrote:

    Dear all,
   
    Starting emacs with "emacs -q -l test test.org". Then press "C-x
    ]". Emacs will freeze.
   
    "test" and "test.org" are attached.
   
    Tested on GNU Emacs 23.0.0.1 (i686-pc-linux-gnu, GTK+ Version 2.8.20)
    of 2006-10-04 running under fedora core 5.

Attachment: test
Description: test

Attachment: test.org
Description: test.org

On Thu Oct 12 10:51:51 2006 +0100, Carsten Dominik wrote:

    I can reproduce this under Emacs 22, but I have not been able to
    figure out what is causing this, because Emacs hangs so that it cannot
    even be stopped with C-g.
    
    It seems to be caused by links which contain hidden and intangible text.
    
    Don't really know where to go from here.
    
    - Carsten

On Thu Oct 12 17:29:46 2006 +0100, Carsten Dominik wrote:

    > Do you mind if I forward my original bug report and your comments in
    > this email to emacs-devel list?
    >
    
    Not at all.  Additional info:  This seems to happen when the cursor
    gets into the white space after a link.  Emacs gets stuck in
    accept-process-output' from the ispell process.  That call is wrapped
    into with-local-quit, which may have to do with the fact that this
    cannot be exited with keyboard-quit.
    
    The work ispell is supposed to be looking up is "uk", and the word is
    extracted from the buffer without text properties, so the fact that I
    am using intangible and invisible text properties should not play a
    role with this.  In fact, I have no idea what might be causing this,
    but I don't see how org-mode could be the true reason.
    
    Here is the backtrace from just before the hangup.  When I press "d",
    emacs will get stuck.
    
    Debugger entered--beginning evaluation of function call form:
    * (accept-process-output ispell-process)
    * (progn (accept-process-output ispell-process) (not (string= "" ...)))
    * (while (progn (accept-process-output ispell-process) (not ...)))
    * (let ((inhibit-quit nil)) (while (progn ... ...)))
    * (condition-case nil (let (...) (while ...)) (quit (setq quit-flag t)
    (eval ...)))
    * (with-local-quit (while (progn ... ...)))
    * (cond ((and ... flyspell-mark-duplications-flag ...)
    (flyspell-highlight-incorrect-region start end ...) nil) ((and
    ... ... ...) flyspell-word-cache-result) ((and ... ...)
    (flyspell-unhighlight-at start) (if ... ...) t) (t (setq
    flyspell-word-cache-start start) (setq flyspell-word-cache-end end)
    (setq flyspell-word-cache-word word) (ispell-send-string "%\n")
    (ispell-send-string ...) (set-process-query-on-exit-flag
    ispell-process nil) (with-local-quit ...) (setq ispell-filter ...) (or
    ispell-filter ...) (if ... ...) (let ... ... ... res)))
    * (progn (setq start (car ...) end (car ...) word (car flyspell-word))
    (cond (... ... nil) (... flyspell-word-cache-result) (... ... ... t)
    (t ... ... ... ... ... ... ... ... ... ... ...)))
    * (if (or (eq flyspell-word nil) (and ... ...)) t (progn (setq start
    ... end ... word ...) (cond ... ... ... ...)))
    * (let* ((cursor-location ...) (flyspell-word ...) start end poss word
    ispell-filter) (if (or ... ...) t (progn ... ...)))
    * (save-excursion (flyspell-accept-buffer-local-defs) (let*
    (... ... start end poss word ispell-filter) (if ... t ...)))
    * flyspell-word()
    * (progn (quote (flyspell-debug-signal-word-checked)) (flyspell-word)
    (setq flyspell-pre-pre-buffer (current-buffer)) (setq
    flyspell-pre-pre-point (point)))
    * (if (flyspell-check-word-p) (progn (quote ...) (flyspell-word) (setq
    flyspell-pre-pre-buffer ...) (setq flyspell-pre-pre-point ...)) (progn
    (setq flyspell-pre-pre-buffer nil) (setq flyspell-pre-pre-point nil)
    (if ... ...)))
    * (let ((command this-command) deactivate-mark) (if
    (flyspell-check-pre-word-p) (with-current-buffer flyspell-pre-buffer
    ... ...)) (if (flyspell-check-word-p) (progn ... ... ... ...) (progn
    ... ... ...)) (while (and ... ...) (let ... ... ...)) (setq
    flyspell-previous-command command))
    * flyspell-post-command-hook()
    * run-hooks(post-command-hook)

-- 
Leo

reply via email to

[Prev in Thread] Current Thread [Next in Thread]