On Wed, Jul 20, 2022 at 06:37:18PM -0400, Thomas Dickey wrote:
> On Wed, Jul 20, 2022 at 06:27:34PM -0400, Thomas Dickey wrote:
> > On Wed, Jul 20, 2022 at 06:01:01PM -0400, Thomas Dickey wrote:
> > > On Wed, Jul 20, 2022 at 05:50:48PM +0200, Cédric Hannotier wrote:
> > > > Package: lynx
> > > > Version: 2.9.0dev.10-1
> > > > Severity: normal
> > > > 
> > > > Dear Maintainer,
> > > > 
> > > > Seems that toggling off the "default colors" in the option menu
> > > > crashes lynx (segfault).
> > > > 
> > > > Steps:
> > > >  - $ lynx
> > > >  - Press o
> > > >  - navigate to "Default colors (!)"
> > > >  - switch from "ON_" (default) to "OFF"
> > > >  - navigate to "Accept Changes" and press enter
> > > > 
> > > > Disabling it using the command-line option
> > > > (lynx -default_colors) seems to work.
> > > > However, toggling it ON, then OFF makes it segfault.
> > > 
> > > thanks (I can reproduce this, will investigate)
> > 
> > The issue that I can reproduce is in ncurses.
> 
> (my traceback is longer than that given in the bug report)
> 
> > Will reassign & resolve it there.
> 
> The apparent problem is from this change:
> 
> 20211106
>       + fix a memory-leak in del_curterm (prompted by discussion with Bram
>         Moolenaar, cf: 20210821).
> 
> Lynx uses delscreen (in libncurses*) when resetting curses,
> which calls del_curterm (in libtinfo*).
> 
> Few programs do this, so it's taken a while to notice.

There was more than one problem, all older than the indicated change.
That just happened to move things around to make the problems noticeable.

In the diffstat:

 ncurses/base/lib_set_term.c           |    8 +++++--
 ncurses/tinfo/lib_setup.c             |    4 +--
 ncurses/tinfo/lib_tputs.c             |    9 ++++----
 ncurses/trace/lib_trace.c             |   22 +++++++++++++++-----
 ncurses/tty/tty_update.c              |   16 ++++++++++-----

The changes in "tinfo" and "tty" are relevant.  The core dump is fixed
by the change in tty_update.c, while the other changes are things that
would be a problem at another time.  (The change to lib_set_term.c is
just to be more certain, and the trace change doesn't affect Debian).

However, there's still a less-visible issue in lynx source (seen with
valgrind), which is fixed in

v2-9-0dev_10i

seen here

https://github.com/ThomasDickey/lynx-snapshots/commit/76e3af60e119146f4da21a008af1ff752c61136f

Since that didn't cause the core-dump which I can reproduce,
it's just fyi - will be in dev.11

-- 
Thomas E. Dickey <dic...@invisible-island.net>
https://invisible-island.net
ftp://ftp.invisible-island.net

Attachment: signature.asc
Description: PGP signature

Reply via email to