emacs-pretest-bug
[Top][All Lists]
Advanced

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

Loop in coding.c (was: Re: its possible to make emacs not respond with i


From: Kim F. Storm
Subject: Loop in coding.c (was: Re: its possible to make emacs not respond with ido mode)
Date: Fri, 03 Jun 2005 10:38:46 +0200
User-agent: Gnus/5.11 (Gnus v5.11) Emacs/22.0.50 (gnu/linux)

Handa-san, can you pls. verify the patch below.

Stefan Monnier <address@hidden> writes:

>>> - This is annoying and time consuming, so i press c-g. However, ido
>>> doesnt stop looking, so I get annoyed and press c-g several times
>>> quickly.
>
> I recommend the use of while-no-input for such cases (I actually wrote the
> first version of it when working on icomplete.el).

The problem is a loop in decode_coding_string.  It does not check
for the CODING_FINISH_INTERRUPT return value from decode_coding (QUIT).
So once the user signal quit, there is no escape from that loop...

The following patch seems to fix it, but I'm not sure it is the correct
thing to do.  


2005-06-03  Kim F. Storm  <address@hidden>

        * coding.c (decode_coding_string): Handle CODING_FINISH_INTERRUPT.

*** coding.c    22 Apr 2005 01:25:21 +0200      1.318
--- coding.c    03 Jun 2005 10:26:56 +0200      
***************
*** 6260,6265 ****
--- 6260,6266 ----
        produced += coding->produced;
        produced_char += coding->produced_char;
        if (result == CODING_FINISH_NORMAL
+         || result == CODING_FINISH_INTERRUPT
          || (result == CODING_FINISH_INSUFFICIENT_SRC
              && coding->consumed == 0))
        break;


-- 
Kim F. Storm <address@hidden> http://www.cua.dk





reply via email to

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