On 2019-07-31 18:38 +0200, Samuel Hym wrote:

> Package: ncurses-base
> Version: 6.1+20190713-1
> Severity: normal
>
> Dear Maintainer,
>
> Since updating ncurses from 6.1+20181013-2 to 6.1+20190713-1, I get
> corruption when I run mutt in a tmux. Since reverting that update
> makes this bug disappear, I report it against ncurses-base. I think I
> saw such glitches in other contexts than in mutt, but that’s where I
> got it to reproduce.
>
> To reproduce, run in a tmux:
>
>     mutt -F /dev/null -e 'set pager_index_lines=6' -f some-mbox
>
> select the 5th message from the top of the screen and try to return
> from the pager to the index. Instead of showing the clean index, I see
> some leftovers from the pager view, including the separation line
> between the 6 index lines and the pager.
> Refreshing the screen with Ctrl-L clears the glitches away.

Thanks for these detailed instructions.  I can confirm this glitch, and
also that downgrading ncurses-base to 6.1+20181013-2 makes it go away.

Since tmux sets TERM=screen by default, and there have not really been
any changes to screen in ncurses' terminfo.src file, I wondered what
happened.  Here is what I found out so far:

,----
| $ dpkg-deb -x /var/cache/apt/archives/ncurses-base_6.1+20181013-2_all.deb 
buster        
| $ dpkg-deb -x /var/cache/apt/archives/ncurses-base_6.1+20190713-1_all.deb sid 
   
| $ infocmp -x -A buster/lib/terminfo -B sid/lib/terminfo screen screen
| comparing screen to screen.
|     comparing booleans.
|     comparing numbers.
|     comparing strings.
|         rin: NULL, '\E[%p1%dT'.
`----

So rin=\E[%p1%dT has been added in sid, apparently because of the
following change in the 20190630 patchlevel:

,----
|       + add a check in tic for paired indn/rin
`----

It looks like tmux does not quite cope with this correctly or so.

Cheers,
       Sven

Reply via email to