Subject: bug#25156: 26.0.50; `describe-text-properties' hangs with 100% cpu usage when property is a char-table

From: Peter Wang <[email-masked]>
Date: Sat, 10 Dec 2016 23:11:10 +0800

BTW, I also found that `describe-variable' has the same problem.

(describe-variable 'lisp-mode-syntax-table)

I have not looked into this yet, it could be the same bug.

On Sat, Dec 10, 2016 at 11:03 PM, Peter Wang <[email-masked]> wrote:

> A simplest test case is like:
>
> (describe-property-list (list 'syntax-table lisp-mode-syntax-table))
>
> evaluating this Elisp expression will hang with 100% CPU usage.
>
>
>
> On Sat, Dec 10, 2016 at 10:22 PM, Eli Zaretskii <[email-masked]> wrote:
>
>> > From: Peter Wang <[email-masked]>
>> > Date: Sat, 10 Dec 2016 21:59:32 +0800
>> >
>> > I came across the problem when I was using `C-u C-x =' on a SLIME
>> > presentation. After some debugging, I found out the cause of the
>> > problem. Here is it:
>> >
>> > In a slime REPL buffer, when the evaluation result is rendered, SLIME
>> > adds text properties using `slime-add-presentation-properties'. One
>> > of the text properties is a syntax-table `slime-presentation-syntax-tab
>> le'.
>> >
>> > `C-u C-x =' calls `(describe-char (point))', which in turn calls
>> > `describe-text-properties', which hangs with 100% cpu usage.
>> >
>> > I think a possible fix could be done in `describe-property-list', adding
>> > a case in cond to handle the type of syntax-table, something like:
>>
>> Thanks.  Could you perhaps prepare a small test case for this problem?
>> It would help understanding the underlying problem, and possibly also
>> serve as a beginning of a test for our test suite.
>>
>
>