Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						69cb1f830e 
					 
					
						
						
							
							Move all calls to fcntl(...O_NONBLOCK) into a function and clear the  
						
						 
						
						... 
						
						
						
						flag on the stdio file descriptors before closing them (fixes things
like "tmux ls && cat"). 
						
						
					 
					
						2011-01-08 01:52:36 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						f56b4ec2ff 
					 
					
						
						
							
							Trying to set FD_CLOEXEC on every fd is a lost cause, just use  
						
						 
						
						... 
						
						
						
						closefrom() before exec. 
						
						
					 
					
						2010-10-16 08:31:55 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						e3be9b1951 
					 
					
						
						
							
							Do not call event_del() for signals after fork(), just use sigaction()  
						
						 
						
						... 
						
						
						
						directly instead - calling libevent functions after fork() w/o
event_reinit() is a bad idea, even if in this case it was harmless. 
						
						
					 
					
						2010-08-19 18:29:01 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						c4a2fdf15b 
					 
					
						
						
							
							Put this back in with the initialisation in the right order.  
						
						 
						
						
						
						
					 
					
						2010-05-04 17:28:16 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						af5e0bd15a 
					 
					
						
						
							
							Revert last change, it appears to be broken somehow.  
						
						 
						
						
						
						
					 
					
						2010-05-04 08:48:06 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						ec1d37b1b2 
					 
					
						
						
							
							Make signal handler setup/teardown two common functions instead of six,  
						
						 
						
						... 
						
						
						
						and reset SIGCHLD after fork to fix problems with some shells. From
Romain Francois. 
						
						
					 
					
						2010-05-03 16:06:32 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						b02cd35354 
					 
					
						
						
							
							Run job commands explicitly in the global enviroment (which can be  
						
						 
						
						... 
						
						
						
						modified with setenv -g) rather than with the environment tmux started
with. 
						
						
					 
					
						2010-04-04 19:02:09 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						6ac3343617 
					 
					
						
						
							
							Typo fix from Tim van der Molen.  
						
						 
						
						
						
						
					 
					
						2010-02-24 19:13:38 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						15a64b805e 
					 
					
						
						
							
							Massive spaces->tabs and trailing whitespace cleanup, hopefully for the last  
						
						 
						
						... 
						
						
						
						time now I've configured emacs to make them displayed in really annoying
colours... 
						
						
					 
					
						2009-12-03 22:50:09 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						4ca857e0e9 
					 
					
						
						
							
							Remove a couple of unused arguments where possible, and add /* ARGSUSED */ to  
						
						 
						
						... 
						
						
						
						the rest to reduce lint output. 
						
						
					 
					
						2009-11-26 21:37:13 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						abb728684b 
					 
					
						
						
							
							Add back JOB_PERSIST checks that got lost.  
						
						 
						
						
						
						
					 
					
						2009-11-04 21:10:49 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						4d6091379b 
					 
					
						
						
							
							Switch jobs over to use a bufferevent.  
						
						 
						
						
						
						
					 
					
						2009-11-04 21:04:43 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						abf3a5d50e 
					 
					
						
						
							
							Initial changes to move tmux to libevent.  
						
						 
						
						... 
						
						
						
						This moves the client-side loops are pretty much fully over to event-based only
(tmux.c and client.c) but server-side (server.c and friends) treats libevent as
a sort of clever poll, waking up after every event to run various things.
Moving the server stuff over to bufferevents and timers and so on will come
later. 
						
						
					 
					
						2009-11-04 20:50:11 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						2f813ef75d 
					 
					
						
						
							
							Add a flag for jobs that shouldn't be freed after they've died and use it for  
						
						 
						
						... 
						
						
						
						status jobs, then only kill those jobs when status-left, status-right or
set-titles-string is changed.
Fixes problems with changing options from inside #(). 
						
						
					 
					
						2009-11-01 23:20:37 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						a22c06a2d6 
					 
					
						
						
							
							Remove unused function.  
						
						 
						
						
						
						
					 
					
						2009-10-21 18:20:16 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						7825871d6a 
					 
					
						
						
							
							Getting the read and write ends of the pipe the right way round is usually  
						
						 
						
						... 
						
						
						
						recommended. DOH. 
						
						
					 
					
						2009-10-21 07:24:23 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						6f2169037e 
					 
					
						
						
							
							Sort out stdout before stdin/stderr in case the stdout side of the pipe got one  
						
						 
						
						... 
						
						
						
						of their fds. 
						
						
					 
					
						2009-10-20 22:15:32 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						cebc988dd4 
					 
					
						
						
							
							Switch run-shell over to queue the command in the background like #().  
						
						 
						
						
						
						
					 
					
						2009-10-11 08:58:05 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						abedfa77da 
					 
					
						
						
							
							There isn't much point in having a free function if it isn't used.  
						
						 
						
						... 
						
						
						
						Also allow a NULL tree. 
						
						
					 
					
						2009-10-11 07:30:07 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						ff4b4e667a 
					 
					
						
						
							
							Collect status from dead jobs and don't invoke the callback until both  
						
						 
						
						... 
						
						
						
						all input (the socket is closed) and status is available. 
						
						
					 
					
						2009-10-11 07:20:16 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						095ecf2d90 
					 
					
						
						
							
							Put all jobs on a global all_jobs list and use that in server.c instead of  
						
						 
						
						... 
						
						
						
						running through all the clients. 
						
						
					 
					
						2009-10-10 18:42:14 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						6bca92db4d 
					 
					
						
						
							
							Rather than running status-left, status-right and window title #() with popen  
						
						 
						
						... 
						
						
						
						immediately every redraw, queue them up and run them in the background,
starting each once every status-interval. The actual status line uses the
output from the last run.
This brings several advantages:
- tmux itself may be called from inside #() without causing the server to hang;
- likewise, sleep or similar doesn't cause the server to block;
- commands aren't run excessively often when redrawing;
- commands shared by status-left and status-right, or used multiple times, will
  only be run once.
run-shell and if-shell still use system()/popen() but will be changed over to
use this too later. 
						
						
					 
					
						2009-10-10 15:03:01 +00:00