mirror of
				https://github.com/tmux/tmux.git
				synced 2025-11-03 16:46:18 +00:00 
			
		
		
		
	Sync OpenBSD patchset 910:
Reset last pane properly when using break-pane as well, fixes a problem reported to Debian by Hannes von Haugwitz (bug 622677).
This commit is contained in:
		@@ -1,4 +1,4 @@
 | 
			
		||||
/* $Id: cmd-break-pane.c,v 1.12 2011-01-07 14:45:33 tcunha Exp $ */
 | 
			
		||||
/* $Id: cmd-break-pane.c,v 1.13 2011-05-18 20:32:47 tcunha Exp $ */
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
 | 
			
		||||
@@ -57,12 +57,18 @@ cmd_break_pane_exec(struct cmd *self, struct cmd_ctx *ctx)
 | 
			
		||||
		return (-1);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	TAILQ_REMOVE(&wl->window->panes, wp, entry);
 | 
			
		||||
	if (wl->window->active == wp) {
 | 
			
		||||
		wl->window->active = TAILQ_PREV(wp, window_panes, entry);
 | 
			
		||||
		if (wl->window->active == NULL)
 | 
			
		||||
			wl->window->active = TAILQ_NEXT(wp, entry);
 | 
			
		||||
	}
 | 
			
		||||
	w = wl->window;
 | 
			
		||||
	TAILQ_REMOVE(&w->panes, wp, entry);
 | 
			
		||||
	if (wp == w->active) {
 | 
			
		||||
		w->active = w->last;
 | 
			
		||||
		w->last = NULL;
 | 
			
		||||
		if (w->active == NULL) {
 | 
			
		||||
			w->active = TAILQ_PREV(wp, window_panes, entry);
 | 
			
		||||
			if (w->active == NULL)
 | 
			
		||||
				w->active = TAILQ_NEXT(wp, entry);
 | 
			
		||||
		}
 | 
			
		||||
	} else if (wp == w->last)
 | 
			
		||||
		w->last = NULL;
 | 
			
		||||
	layout_close_pane(wp);
 | 
			
		||||
 | 
			
		||||
	w = wp->window = window_create1(s->sx, s->sy);
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user