GNU bug report logs -
#30320
26.0.91; Crash when using lsp-ui-doc-mode
Previous Next
Reported by: Jake Goulding <jake.goulding <at> gmail.com>
Date: Thu, 1 Feb 2018 16:25:02 UTC
Severity: normal
Found in version 26.0.91
Done: Lars Ingebrigtsen <larsi <at> gnus.org>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
> From: Jake Goulding <jake.goulding <at> gmail.com>
> Date: Sun, 4 Feb 2018 16:38:20 -0500
>
> Ah, using `XSTRING(XSYMBOL(args[0])->u.s.name)->u.s.data` seems to do the trick:
>
> <not a symbol 1>
> lsp--parser-on-message
> <not a symbol 2>
> lsp-ui-doc--callback
> lsp-ui-doc--display
> lsp-ui-doc--move-frame
> set-frame-size
Thanks, great job. It is now clear what happens. As I guessed,
lsp-ui assumes it is run in a GUI frame, so it calls functions that
make no sense on TTY frames. I suggest to communicate this to the
developers of that package.
Can you avoid the crash if you remove the call to set-frame-size in
lsp-ui-doc--move-frame, or condition it on display-graphic-p returning
non-nil?
As for preventing such crashes even though some Lisp does nonsensical
things: I think a TTY frame cannot be less than 3 or 4 lines plus the
number of lines used for the menu bar. Martin, WDYT about adding
these limitations to adjust_frame_size?
> not a symbol 1:
>
> p *XVECTOR(args[0])
> (Lisp_Vector) $14 = {
> header = (size = 4611686018729377797, gcaligned = '\x05')
> contents = {}
> }
> (lldb) p PSEUDOVECTOR_TYPE(XVECTOR(args[0]))
> (pvec_type) $18 = PVEC_COMPILED
>
> not a symbol 2:
>
> p *XVECTOR(args[0])
> (Lisp_Vector) $16 = {
> header = (size = 4611686018729377797, gcaligned = '\x05')
> contents = {}
> }
> (lldb) p PSEUDOVECTOR_TYPE(XVECTOR(args[0]))
> (pvec_type) $17 = PVEC_COMPILED
Yes, these are byte-compiled functions.
This bug report was last modified 5 years and 261 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.