Applied, thanks, although I left out the comment. On Fri, Apr 19, 2013 at 01:25:27AM -0700, Daniel Ralston wrote: > Hi all, > > I found and fixed a bug where window sizes weren't being recalculated > in grouped sessions when a session's child dies, killing the window. > > I've included the repro steps in the commit message. > Let me know if you'd like any changes. > > Daniel > > ---- > > >From d7c541ad37dbe14dc50a2878448f5de0b753286c Mon Sep 17 00:00:00 2001 > From: Daniel Ralston <wubbul...@gmail.com> > Date: Fri, 19 Apr 2013 01:13:07 -0700 > Subject: [PATCH] [PATCH] FIX window resizing bug when a grouped session's > child dies > > When the child of a grouped session dies, and the session's client > switches to the same window as the client of another session it is > grouped with, sizes should be recalculated the same as if the user had > switched to that other window manually. > > Steps to Reproduce Bug: > 1. In an xterm: > $ tmux new -s TEST_SESSION > > 2. Make sure the tmux session has aggressive-resizing enabled: > <prefix>-: aggressive resizing on > > 3. In another xterm: > $ tmux new -t TEST_SESSION > > 4. Create a new window running a shell (or whatever program you want) > in the second xterm, and switch to it so the two tmux clients are > viewing different windows. > > 5. Resize the second xterm so it is smaller than the first. > > 6. Kill the program in the second xterm so that its window closes. This > will cause it to switch to the same window as the first tmux > session. > > 7. In the first xterm, even though a smaller tmux session is now > viewing that window, the size has not been updated. > --- > server-fn.c | 6 ++++++ > 1 file changed, 6 insertions(+) > > diff --git a/server-fn.c b/server-fn.c > index 566925f..4db4eb5 100644 > --- a/server-fn.c > +++ b/server-fn.c > @@ -283,6 +283,12 @@ server_kill_window(struct window *w) > if (options_get_number(&s->options, "renumber-windows")) > session_renumber_windows(s); > } > + > + /* If this session is grouped with another session, this > + * session's client is switching to the same window that the > + * other session's client is focused on, and two two clients > + * are different sizes, we need to recalculate sizes. */ > + recalculate_sizes(); > } > > int > -- > 1.8.2.1 > > ------------------------------------------------------------------------------ > Precog is a next-generation analytics platform capable of advanced > analytics on semi-structured data. The platform includes APIs for building > apps and a phenomenal toolset for data science. Developers can use > our toolset for easy data analysis & visualization. Get a free account! > http://www2.precog.com/precogplatform/slashdotnewsletter > _______________________________________________ > tmux-users mailing list > tmux-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/tmux-users
------------------------------------------------------------------------------ Precog is a next-generation analytics platform capable of advanced analytics on semi-structured data. The platform includes APIs for building apps and a phenomenal toolset for data science. Developers can use our toolset for easy data analysis & visualization. Get a free account! http://www2.precog.com/precogplatform/slashdotnewsletter _______________________________________________ tmux-users mailing list tmux-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/tmux-users