[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#70927: 30.0.50; track-changes assertion when shutting down eglot
From: |
Eli Zaretskii |
Subject: |
bug#70927: 30.0.50; track-changes assertion when shutting down eglot |
Date: |
Tue, 14 May 2024 09:14:18 +0300 |
> Date: Mon, 13 May 2024 15:21:37 -0700
> From: Steven Allen via "Bug reports for GNU Emacs,
> the Swiss army knife of text editors" <bug-gnu-emacs@gnu.org>
>
>
> When `eglot-autoshutdown` is set, killing eglot buffers fails with a
> track-changes assertion because, from what I can tell,
> `eglot--signal-textDocument/didChange` is called when
> `eglot--track-changes` is `nil`.
>
> Backtrace:
>
> cl--assertion-failed((memq id track-changes--trackers))
> track-changes-fetch(nil #<subr
> F616e6f6e796d6f75732d6c616d626461_anonymous_lambda_136>)
> eglot--track-changes-fetch(nil)
> eglot--signal-textDocument/didChange()
> eglot--request(#<eglot-lsp-server eglot-lsp-server-10d3578e408f> :shutdown
> nil :timeout 1.5)
> eglot-shutdown(#<eglot-lsp-server eglot-lsp-server-10d3578e408f>)
> eglot--managed-mode(-1)
> eglot--managed-mode-off()
> kill-current-buffer()
> funcall-interactively(kill-current-buffer)
> command-execute(kill-current-buffer)
>
> Reproduction:
>
> 1. Start emacs with `emacs -Q`.
> 2. Run `M-: (setopt eglot-autoshutdown t) RET`
> 3. Open any file you have an LSP server for and run `M-x eglot RET`.
> 4. Kill the buffer.
Thanks, I added Stefan and João to the discussion.
bug#70927: 30.0.50; track-changes assertion when shutting down eglot,
Eli Zaretskii <=