mirror of
				https://github.com/tmux/tmux.git
				synced 2025-11-04 09:26:05 +00:00 
			
		
		
		
	Sync OpenBSD patchset 906:
Fix a memory leak if cmd_pane_session succeeds, from Tiago Cunha.
This commit is contained in:
		
							
								
								
									
										6
									
								
								cmd.c
									
									
									
									
									
								
							
							
						
						
									
										6
									
								
								cmd.c
									
									
									
									
									
								
							@@ -1,4 +1,4 @@
 | 
			
		||||
/* $Id: cmd.c,v 1.152 2011-04-06 22:29:26 nicm Exp $ */
 | 
			
		||||
/* $Id: cmd.c,v 1.153 2011-05-18 20:30:36 tcunha Exp $ */
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
 | 
			
		||||
@@ -713,20 +713,20 @@ cmd_find_session(struct cmd_ctx *ctx, const char *arg, int prefer_unattached)
 | 
			
		||||
	/* A NULL argument means the current session. */
 | 
			
		||||
	if (arg == NULL)
 | 
			
		||||
		return (cmd_current_session(ctx, prefer_unattached));
 | 
			
		||||
	tmparg = xstrdup(arg);
 | 
			
		||||
 | 
			
		||||
	/* Lookup as pane id. */
 | 
			
		||||
	if ((wp = cmd_lookup_paneid(arg)) != NULL)
 | 
			
		||||
		return (cmd_pane_session(ctx, wp, NULL));
 | 
			
		||||
 | 
			
		||||
	/* Trim a single trailing colon if any. */
 | 
			
		||||
	tmparg = xstrdup(arg);
 | 
			
		||||
	arglen = strlen(tmparg);
 | 
			
		||||
	if (arglen != 0 && tmparg[arglen - 1] == ':')
 | 
			
		||||
		tmparg[arglen - 1] = '\0';
 | 
			
		||||
 | 
			
		||||
	/* An empty session name is the current session. */
 | 
			
		||||
	if (*tmparg == '\0') {
 | 
			
		||||
		xfree (tmparg);
 | 
			
		||||
		xfree(tmparg);
 | 
			
		||||
		return (cmd_current_session(ctx, prefer_unattached));
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user