greetings.
I've tested telega with emacs-29 (I cloned from savannah.gnu.org), and it appears that, indeed, telega does not seem to crash there.
I've compiled emacs-28.2 with -O0 and -g3, and business as usual, log attached and mirrored on termbin.
thanks a million for your patience.
Cc: luangruo@yahoo.com, 58767@debbugs.gnu.org
Date: Tue, 25 Oct 2022 15:50:50 +0300
From: Eli Zaretskii <eliz@gnu.org>
> Date: Tue, 25 Oct 2022 14:10:12 +0200 (CEST)
> From: purity.piped@tuta.io
> Cc: Po Lu <luangruo@yahoo.com>, 58767@debbugs.gnu.org
>
> What I do that makes emacs crash is just launch telega. Either via a keybind or m-x.
So just "M-x telega RET" is enough to cause the crash?
FTR: I tried to reproduce the crash, but couldn't get far enough:
running "M-x telega" requires some server, which I don't have, and
won't install. So someone who has that installed will need to debug
this and tell me how come this code crashes.
The abort is in this code in bidi.c:
/* Don't move at end of buffer/string. */
else if (bidi_it->charpos < (string_p ? bidi_it->string.schars : ZV))
{
/* Advance to the next character, skipping characters covered by
display strings (nchars > 1). */
if (bidi_it->nchars <= 0)
emacs_abort ();
bidi_it->charpos += bidi_it->nchars;
if (bidi_it->ch_len == 0)
emacs_abort ();
bidi_it->bytepos += bidi_it->ch_len;
prev_type = bidi_it->orig_type;
}
The backtrace points to the first call to emacs_abort, but since this
is an optimized build, it could be the second one as well. These
situations "should not happen", ever. So I must understand what kind
of buffer or string text we bumped into that caused this, it should be
something highly unusual.