fixup! gluon-core: implement popen3() in gluon/util.lua
This commit is contained in:
		
							parent
							
								
									fd6c77d134
								
							
						
					
					
						commit
						12d2f3a252
					
				| @ -199,19 +199,18 @@ M.PipePolicies = { | ||||
| -- Execute a program found using command PATH search, like the shell. | ||||
| -- Return the pid, as well as the I/O streams as pipes or nil on error. | ||||
| function M.popen3(policies, path, ...) | ||||
| 	local pipes = {} | ||||
| 	local intern = {} | ||||
| 	local extern = {} | ||||
| 
 | ||||
| 	for fd, policy in pairs(policies) do | ||||
| 		if M.PipePolicies.CREATE==policy then | ||||
| 			pipes[fd]={posix_unistd.pipe()} | ||||
| 			local piper, pipew = posix_unistd.pipe() | ||||
| 			if posix_unistd.STDIN_FILENO==fd then | ||||
| 				intern[fd]=pipes[fd][1] | ||||
| 				extern[fd]=pipes[fd][2] | ||||
| 				intern[fd]=piper | ||||
| 				extern[fd]=pipew | ||||
| 			else | ||||
| 				intern[fd]=pipes[fd][2] | ||||
| 				extern[fd]=pipes[fd][1] | ||||
| 				intern[fd]=pipew | ||||
| 				extern[fd]=piper | ||||
| 			end | ||||
| 		end | ||||
| 	end | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user