mirror of
				https://github.com/tmux/tmux.git
				synced 2025-11-04 00:56:10 +00:00 
			
		
		
		
	Sync OpenBSD patchset 684:
Catch SIGCHLD to avoid a zombie, from patrick keshishian.
This commit is contained in:
		
							
								
								
									
										11
									
								
								tmux.c
									
									
									
									
									
								
							
							
						
						
									
										11
									
								
								tmux.c
									
									
									
									
									
								
							@@ -1,4 +1,4 @@
 | 
			
		||||
/* $Id: tmux.c,v 1.204 2010-02-26 13:31:39 tcunha Exp $ */
 | 
			
		||||
/* $Id: tmux.c,v 1.205 2010-04-22 21:48:49 tcunha Exp $ */
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
 | 
			
		||||
@@ -241,6 +241,7 @@ main(int argc, char **argv)
 | 
			
		||||
	struct keylist		*keylist;
 | 
			
		||||
	struct env_data		 envdata;
 | 
			
		||||
	struct msg_command_data	 cmddata;
 | 
			
		||||
	struct sigaction	 sigact;
 | 
			
		||||
	char			*s, *shellcmd, *path, *label, *home, *cause;
 | 
			
		||||
	char			 cwd[MAXPATHLEN], **var;
 | 
			
		||||
	void			*buf;
 | 
			
		||||
@@ -540,6 +541,14 @@ main(int argc, char **argv)
 | 
			
		||||
		exit(1);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	/* Catch SIGCHLD to avoid a zombie when starting the server. */
 | 
			
		||||
	memset(&sigact, 0, sizeof sigact);
 | 
			
		||||
	sigemptyset(&sigact.sa_mask);
 | 
			
		||||
	sigact.sa_handler = SIG_IGN;
 | 
			
		||||
	if (sigaction(SIGCHLD, &sigact, NULL) != 0)
 | 
			
		||||
		fatal("sigaction failed");
 | 
			
		||||
 | 
			
		||||
	/* Initialise the client socket/start the server. */
 | 
			
		||||
	if ((main_ibuf = client_init(path, cmdflags, flags)) == NULL)
 | 
			
		||||
		exit(1);
 | 
			
		||||
	xfree(path);
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user