Subject: bug#30320: 26.0.91; Crash when using lsp-ui-doc-mode

From: martin rudalics <[email-masked]>
Date: Mon, 12 Feb 2018 10:24:34 +0100

> The new patch appears to continue to have a crash:
 >
 > frame #9: 0x0000000100173610
 > Emacs`cmcheckmagic(tty=0x0000000107001000) at cm.c:118
 >     115   if (curX (tty) == FrameCols (tty))
 >     116     {
 >     117       if (!MagicWrap (tty) || curY (tty) >= FrameRows (tty) - 1)
 > -> 118 emacs_abort ();
 >     119       if (tty->termscript)
 >     120 putc_unlocked ('\r', tty->termscript);
 >     121       putc_unlocked ('\r', tty->output);
 > (lldb) p (tty)->Wcm->cm_magicwrap
 > (bool_bf) $0 = true
 > (lldb) p (tty)->Wcm->cm_curY
 > (int) $1 = 2
 > (lldb) p (tty)->Wcm->cm_rows
 > (int) $3 = 3
 >
 > I am at commit 66e9527b9a8c66bc3c5a4e5c3e68777d93310be1
 >   on the `emacs-26` branch. My full sequence of commands:
 >
 > git checkout -p # removing patch v1
 > mv ~/Downloads/frame.c.diff ./patch2.diff
 > git apply --ignore-whitespace patch2.diff
 > make -j7
 > ./nextstep/Emacs.app/Contents/MacOS/Emacs -Q -nw
 >
 > Perhaps `make` by itself doesn't do the proper rebuild?

Thanks for testing.

Somehow that code seems perfidious enough to override the value of
`window-min-height'.  Can you please try the following with Eli's
patch applied so crashes don't interfere: Locate the identity of the
small frame, for example, by looking at the value returned by
(frame-list).  Then evaluate the form

(window-min-size (frame-root-window FRAME))

substituting FRAME with the frame you obtained above which could
result in something like

(window-min-size (frame-root-window (car (frame-list))))

or

(window-min-size (frame-root-window (cadr (frame-list))))

and tell us the result.

Thanks, martin