[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#71289: 30.0.50; cmcheckmagic aborts when tty_write_glyphs writes "Ga
From: |
Eli Zaretskii |
Subject: |
bug#71289: 30.0.50; cmcheckmagic aborts when tty_write_glyphs writes "Garbage collecting..." in some cases |
Date: |
Fri, 31 May 2024 21:17:50 +0300 |
> From: Daniel Clemente <n142857@gmail.com>
> Date: Fri, 31 May 2024 17:07:45 +0000
> Cc: 71289@debbugs.gnu.org
>
> > Thanks, but these backtraces are not enough, because they don't
> > explain why was emacs_abort called. We need to see all the values
> > involved in this condition:
> >
> > if (curX (tty) == FrameCols (tty))
> > {
> > if (!MagicWrap (tty) || curY (tty) >= FrameRows (tty) - 1) <<<<<<<<<<<
> > emacs_abort ();
>
>
> These were the variables just before emacs_abort, and (abort==1) when
> aborting.
>
> At point cmcheckmagic, ¿abort? 0. MagicWrap 1, curY 0, vs. 3 - 1. Now
> tty has 3 rows, 14 cols
> At point cmcheckmagic, ¿abort? 0. MagicWrap 1, curY 1, vs. 3 - 1. Now
> tty has 3 rows, 14 cols
> At point cmcheckmagic, ¿abort? 1. MagicWrap 1, curY 3, vs. 3 - 1. Now
> tty has 3 rows, 14 cols
So you are saying that the terminal lies to us? It has 3 rows, but
somehow wraps the cursor to the 4th row? What are the window and
frame dimensions at this point?