Thanks! Great to hear you tracked it down already!

> On Nov 29, 2010, at 1:05 AM, Taisuke Yamada wrote:
> 
>> I'm also hit by exactly the same issue.
>> Tmux fails to refresh screen (both input and output does not
>> show up) until I switch to another window and back.
>>
>> It seems calling "choose-client" seems to fix the issue.
>> For further detail, I'll run tmux with "-vvv" and will report
>> more detail.
> 
> Sorry, I forgot to update this bug.  The tmux author and I eventually 
> isolated the problem.   It seems to be limited to "aggressive-resize" windows 
> being improperly set as hidden.  Here is a patch which simply removes the 
> hidden flag; it should be in the next upstream version.
> 
> Index: resize.c
> ===================================================================
> RCS file: /cvs/src/usr.bin/tmux/resize.c,v
> retrieving revision 1.5
> diff -u -p -r1.5 resize.c
> --- resize.c  21 Jun 2010 01:27:46 -0000      1.5
> +++ resize.c  14 Nov 2010 11:12:00 -0000
> @@ -113,11 +113,8 @@ recalculate_sizes(void)
>                                       ssy = s->sy;
>                       }
>               }
> -             if (ssx == UINT_MAX || ssy == UINT_MAX) {
> -                     w->flags |= WINDOW_HIDDEN;
> +             if (ssx == UINT_MAX || ssy == UINT_MAX)
>                       continue;
> -             }
> -             w->flags &= ~WINDOW_HIDDEN;
> 
>               limit = options_get_number(&w->options, "force-width");
>               if (limit != 0 && ssx > limit)
> Index: tmux.h
> ===================================================================
> RCS file: /cvs/src/usr.bin/tmux/tmux.h,v
> retrieving revision 1.246
> diff -u -p -r1.246 tmux.h
> --- tmux.h    11 Nov 2010 20:51:30 -0000      1.246
> +++ tmux.h    14 Nov 2010 11:12:01 -0000
> @@ -843,9 +843,8 @@ struct window {
> 
>       int              flags;
> #define WINDOW_BELL 0x1
> -#define WINDOW_HIDDEN 0x2
> -#define WINDOW_ACTIVITY 0x4
> -#define WINDOW_REDRAW 0x8
> +#define WINDOW_ACTIVITY 0x2
> +#define WINDOW_REDRAW 0x4
> 
>       struct options   options;
> 
> Index: tty.c
> ===================================================================
> RCS file: /cvs/src/usr.bin/tmux/tty.c,v
> retrieving revision 1.92
> diff -u -p -r1.92 tty.c
> --- tty.c     16 Oct 2010 08:31:55 -0000      1.92
> +++ tty.c     14 Nov 2010 11:12:02 -0000
> @@ -547,7 +547,7 @@ tty_write(void (*cmdfn)(
> 
>       if (wp->window->flags & WINDOW_REDRAW || wp->flags & PANE_REDRAW)
>               return;
> -     if (wp->window->flags & WINDOW_HIDDEN || !window_pane_visible(wp))
> +     if (!window_pane_visible(wp))
>               return;
> 
>       for (i = 0; i < ARRAY_LENGTH(&clients); i++) {
> 


Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to