Call _exit() instead of exit() if exec*() fails
exit() will also unwind the atexit() functions. This is bad because if exec*() fails the process is in an inconsistent state.
This commit is contained in:
		
							parent
							
								
									bafbba56cd
								
							
						
					
					
						commit
						4418939dd9
					
				
					 1 changed files with 1 additions and 1 deletions
				
			
		
							
								
								
									
										2
									
								
								st.c
									
										
									
									
									
								
							
							
						
						
									
										2
									
								
								st.c
									
										
									
									
									
								
							|  | @ -1190,7 +1190,7 @@ execsh(void) { | |||
| 	signal(SIGALRM, SIG_DFL); | ||||
| 
 | ||||
| 	execvp(prog, args); | ||||
| 	exit(EXIT_FAILURE); | ||||
| 	_exit(EXIT_FAILURE); | ||||
| } | ||||
| 
 | ||||
| void | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue