I don't know what you are looking at that has tty_reset, but the problem
is most likely that ECH should take account of BCE, so it should call
tty_default_atttributes instead of tty_attributes. Please try this:

Index: tty.c
===================================================================
RCS file: /cvs/src/usr.bin/tmux/tty.c,v
retrieving revision 1.272
diff -u -p -r1.272 tty.c
--- tty.c       10 May 2017 18:40:13 -0000      1.272
+++ tty.c       10 May 2017 21:34:36 -0000
@@ -1019,7 +1019,9 @@ tty_cmd_deletecharacter(struct tty *tty,
 void
 tty_cmd_clearcharacter(struct tty *tty, const struct tty_ctx *ctx)
 {
-       tty_attributes(tty, &grid_default_cell, ctx->wp);
+       struct window_pane      *wp = ctx->wp;
+
+       tty_default_attributes(tty, wp, ctx->bg);
 
        tty_cursor_pane(tty, ctx, ctx->ocx, ctx->ocy);
 
 


On Wed, May 10, 2017 at 10:09:29PM +0300, ?????????????? wrote:
>    Hello.
>    I have unexpected and annoying (a bit) behaviour
>    withA tmux,A visA (https://github.com/martanne/vis)A and 256 color
>    terminals supporting 'ech' terminfo entry (st-256color (true color also),
>    xterm-256color).
>    visA has status line (just like tmux).
>    But when i use st-256color or xterm-256color as TERM, it prints status
>    line with spaces on black background while other text is on gray
>    (http://i.imgur.com/DA4VdN5.png).
>    - line looks good when I use those terminals without tmux
>    - line looks good if i manually remove 'ech' in terminfo of those
>    terminals (or use screen-256color) (setting 'ech@' in terminal-overrides
>    doesn't help)
>    Investigations (btw debugging tmux is very satisfying :D) lead me to
>    conclusion that this is because there is a tty_reset right before 'ech'
>    command.
>    (which is there since this the beginning of
>    implementationA 
> https://github.com/tmux/tmux/commit/44f8e1caffce2e887682c3314ee22becc09e1d3cA 
> and
>    is inside tty_attributes in master)
>    When I comment call to tty_attributes inside tty_cmd_clearcharacter (or
>    use &tty->last_cell instead of grid_default_cell as 2nd argument)
>    everything becomes fine too (didn't fully understand wtf i was doing
>    actually)
>    From man terminfo:
>    A A command to erase n characters (equivalent to outputting n blanks
>    without moving the cursor) can be given asA echA with one parameter.
>    So I am wondering if this is a bug in tmux and if not, could someone
>    clarify this for me: Why do we need tty_reset there?
>    BR,
>    Evgeniy Stratonikov
> 
>    --
>    You received this message because you are subscribed to the Google Groups
>    "tmux-users" group.
>    To unsubscribe from this group and stop receiving emails from it, send an
>    email to [email protected].
>    To post to this group, send email to [email protected].
>    For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"tmux-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send an email to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to