Merge pull request #10067 from reitermarkus/sudo-prompt
Fix `sudo` prompt.
This commit is contained in:
		
						commit
						3f6a930044
					
				@ -167,7 +167,7 @@ class SystemCommand
 | 
			
		||||
    options = {
 | 
			
		||||
      # Create a new process group so that we can send `SIGINT` from
 | 
			
		||||
      # parent to child rather than the child receiving `SIGINT` directly.
 | 
			
		||||
      pgroup: true,
 | 
			
		||||
      pgroup: sudo? ? nil : true,
 | 
			
		||||
    }
 | 
			
		||||
    options[:chdir] = chdir if chdir
 | 
			
		||||
 | 
			
		||||
@ -183,7 +183,7 @@ class SystemCommand
 | 
			
		||||
 | 
			
		||||
    @status = raw_wait_thr.value
 | 
			
		||||
  rescue Interrupt
 | 
			
		||||
    Process.kill("INT", pid) if pid
 | 
			
		||||
    Process.kill("INT", pid) if pid && !sudo?
 | 
			
		||||
    raise Interrupt
 | 
			
		||||
  rescue SystemCallError => e
 | 
			
		||||
    @status = $CHILD_STATUS
 | 
			
		||||
 | 
			
		||||
@ -55,7 +55,7 @@ describe SystemCommand do
 | 
			
		||||
            .to receive(:popen3)
 | 
			
		||||
            .with(
 | 
			
		||||
              an_instance_of(Hash), ["/usr/bin/sudo", "/usr/bin/sudo"], "-E", "--",
 | 
			
		||||
              "/usr/bin/env", "A=1", "B=2", "C=3", "env", *env_args, pgroup: true
 | 
			
		||||
              "/usr/bin/env", "A=1", "B=2", "C=3", "env", *env_args, pgroup: nil
 | 
			
		||||
            )
 | 
			
		||||
            .and_wrap_original do |original_popen3, *_, &block|
 | 
			
		||||
              original_popen3.call("true", &block)
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user