Subject: Re: bug#73838: 31.0.50; Problems in note_mouse_highlight if -nw

From: Eli Zaretskii <[email-masked]>
Date: Wed, 16 Oct 2024 21:30:03 +0300

> From: Gerd Möllmann <[email-masked]>
> Cc: [email-masked]
> Date: Wed, 16 Oct 2024 18:56:53 +0200
> 
> Eli Zaretskii <[email-masked]> writes:
> 
> > How can scroll bars happen on TTY frames?
> 
> I'll try to answer this a bit more broadly: I'd like the code to be more
> resilient, and not make implicit assumptions about the absence of of
> features on ttys, which when false, leads to such hard to detect errors.
> 
> Consider the internal border case. In master, FRAME_INTERNAL_BORDER
> happens to return 0 in master. But that might change, if I ever get
> setting internal borders to work for tty child frames, to draw the
> border there.

But then we need to audit a lot more than just these bits.  E.g., who
will guarantee that FRAME_WINDOW_P is always zero on TTY frames?

More seriously, I think we should prefer functional tests to
declarative tests.  Which means not to assume that TTY frames can
never have some display feature.  Thus, IMO your suggestion is in a
sense a step back, because it assumes that TTY frames can never have
these decorations and can never have different cursor types.  So my
suggestion would be to do the opposite: understand why
FRAME_OUTPUT_DATA segfaults when dereferenced on TTY frames, and fix
that so that it doesn't.