Opened 7 years ago

Closed 7 years ago

#54855 closed update (fixed)

Bug introduced in ncurses 6.0+20170701 is fixed upstream

Reported by: grumpybozo (Bill Cole) Owned by: jmroot (Joshua Root)
Priority: Normal Milestone:
Component: ports Version:
Keywords: haspatch Cc: lbschenkel (Leonardo Brondani Schenkel), raimue (Rainer Müller)
Port: ncurses

Description

See https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=868266 which explains the bug and impact, notably causing 'perldoc' to emit incorrect output.

Attachments (2)

Portfile.patch (902 bytes) - added by grumpybozo (Bill Cole) 7 years ago.
diff -uw output for Portfile change.
hex.diff.patch (748 bytes) - added by grumpybozo (Bill Cole) 7 years ago.
Diff -uw output for files/hex.diff patch.

Download all attachments as: .zip

Change History (9)

Changed 7 years ago by grumpybozo (Bill Cole)

Attachment: Portfile.patch added

diff -uw output for Portfile change.

Changed 7 years ago by grumpybozo (Bill Cole)

Attachment: hex.diff.patch added

Diff -uw output for files/hex.diff patch.

comment:1 Changed 7 years ago by mf2k (Frank Schima)

Cc: jmr@… openmaintainer removed
Keywords: update removed

Please do not Cc openmaintainer because it is not a valid email address.

Last edited 7 years ago by mf2k (Frank Schima) (previous) (diff)

comment:2 Changed 7 years ago by Schamschula (Marius Schamschula)

Cc: jmroot removed
Owner: set to jmroot
Status: newassigned

comment:3 Changed 7 years ago by jmroot (Joshua Root)

Cc: lbschenkel added

There's a complication in that ncurses 20170819 and later cause the current version of neovim to crash. It would be unfortunate to fix one problem but introduce another. So I guess the options are to wait for neovim 0.2.1, or try to backport just the fix for this issue.

comment:4 in reply to:  3 Changed 7 years ago by grumpybozo (Bill Cole)

Building from source (port -d -s upgrade ncurses ; port -d -s install neovim) with an updated ports tree plus my update patches to switch to ncurses 20170916, I cannot reproduce the neovim crash described at https://github.com/neovim/neovim/issues/7206 by lbschenkel on 10.12.6, 10.11.6, or 10.6.8.

comment:5 Changed 7 years ago by lbschenkel (Leonardo Brondani Schenkel)

I found it strange that you could not reproduce it (since I can reproduce it 100% in any platform), so I tested again. I discovered that the subsequent (and currently latest) terminfo release, 1.617, does not trigger the crash. Rolling back to the previous one, 1.616, does crash.

So I suppose that an upgrade to latest ncurses (or any recent version that ships with terminfo 1.617) should be "safe" from a NeoVim point of view. Since NeoVim 0.2.0 terminfo parsing code is buggy, it's hard to tell which changes/combinations of factors in terminfo will cause it to dump core on start.

To make it a bit easier to handle these kind of situations in the future, it may be worth considering splitting the terminal database from ncurses into its own port, terminfo, so the code and the terminal definitions could be upgraded independently. Linux distros in particular often ship both as separate packages for this reason.

comment:6 Changed 7 years ago by raimue (Rainer Müller)

Cc: raimue added

I did not experience problems with this updated ncurses and neovim. I assume you are right and the terminfo update prevents the crash.

comment:7 Changed 7 years ago by jmroot (Joshua Root)

Resolution: fixed
Status: assignedclosed

In 1186a2aada3ebae18619e65f226411de57804645/macports-ports:

ncurses: update to 20170916

Fixes: #54855

Note: See TracTickets for help on using tickets.