[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#28926: 26.0.90; java-mode hangs on "<"
From: |
Noam Postavsky |
Subject: |
bug#28926: 26.0.90; java-mode hangs on "<" |
Date: |
Sat, 21 Oct 2017 16:41:14 -0400 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/26.0.90 (gnu/linux) |
tags 28926 + confirmed
quit
detlevvandaele <detlev.vandaele@gmail.com> writes:
> Hello,
>
> recently I've been trying to get a decent java environment set-up for
> emacs, and I've noticed that whenever I open a java buffer and type
> "<" for the first time, the emacs process hangs indefinitely.
>
> Quitting out with C-g then inserts the character, and no further issues
> arise so long as the buffer is not reverted (meaning I can then insert
> as many "<" as I want without hanging).
> Reverting the buffer or opening a new java buffer re-introduces the issue.
>
> I can personally reproduce this bug on both my macbook pro running macOS High
> Sierra and my Arch Linux machine with emacs version 26.0.90.
> The bug does not seem to occur on emacs 25.3.2 on either OS.
>
> Steps to reproduce:
> 1. Start emacs -Q
> 2. Open an arbitrary java file (e.g. test.java)
> 3. Type an opening "<"
>
> Alternatively:
> 1. Start emacs -Q
> 2. Open up the *scratch* buffer
> 3. Activate java-mode (M-x java-mode)
> 4. Type an opening "<"
>
> Perceived result: emacs hangs indefinitely until the current command is quit.
> Expected result: immediate insertion of the "<" character without
> freezing/hanging.
Here's a backtrace using debug-on-quit:
Debugger entered--Lisp error: (quit)
c-forward-<>-arglist-recur(nil)
c-forward-<>-arglist(nil)
c-restore-<>-properties(146 147 0)
#f(compiled-function (fn) #<bytecode 0xeb4015>)(c-restore-<>-properties)
mapc(#f(compiled-function (fn) #<bytecode 0xeb4015>) (c-depropertize-new-text
c-parse-quotes-after-change c-restore-<>-properties c-change-expand-fl-region))
c-after-change(146 147 0)
self-insert-command(1)
funcall-interactively(self-insert-command 1)
call-interactively(self-insert-command nil nil)
command-execute(self-insert-command)