| 
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -247,7 +247,7 @@ static CSIEscape escseq; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					static int cmdfd; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					static pid_t pid; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					static Selection sel; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					static char *opt_cmd   = NULL; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					static char **opt_cmd  = NULL; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					static char *opt_title = NULL; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					static char *opt_class = NULL; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -547,15 +547,12 @@ void | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					execsh(void) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						char **args; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						char *envshell = getenv("SHELL"); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						DEFAULT(envshell, "sh"); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						if(opt_cmd) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							args = (char*[]){"sh", "-c", opt_cmd, NULL}; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						else | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							args = (char*[]){envshell, "-i", NULL}; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						DEFAULT(envshell, "sh"); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						putenv("TERM="TNAME); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						args = opt_cmd ? opt_cmd : (char*[]){envshell, "-i", NULL}; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						execvp(args[0], args); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						exit(EXIT_FAILURE); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					void  | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -1855,12 +1852,15 @@ main(int argc, char *argv[]) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								if(++i < argc) opt_class = argv[i]; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								break; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							case 'e': | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								if(++i < argc) opt_cmd = argv[i]; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								if(++i < argc) opt_cmd = &argv[i]; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								break; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							case 'v': | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							default: | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								die(USAGE); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							/* -e eats every remaining arguments */ | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							if(opt_cmd) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								break; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						setlocale(LC_CTYPE, ""); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						tnew(80, 24); | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
				
				 | 
				
					
  |