mirror of
https://github.com/containers/podman.git
synced 2025-06-22 01:48:54 +08:00
always send generic error in case io fails
Signed-off-by: Peter Hunt <pehunt@redhat.com>
This commit is contained in:
@ -1073,6 +1073,7 @@ func configureVarlinkAttachStdio(reader *bufio.Reader, writer *bufio.Writer, std
|
|||||||
// Read from the wire and direct to stdout or stderr
|
// Read from the wire and direct to stdout or stderr
|
||||||
err := virtwriter.Reader(reader, stdout, os.Stderr, nil, nil, ecChan)
|
err := virtwriter.Reader(reader, stdout, os.Stderr, nil, nil, ecChan)
|
||||||
defer restoreTerminal(oldTermState)
|
defer restoreTerminal(oldTermState)
|
||||||
|
sendGenericError(ecChan)
|
||||||
errChan <- err
|
errChan <- err
|
||||||
}()
|
}()
|
||||||
|
|
||||||
@ -1081,11 +1082,13 @@ func configureVarlinkAttachStdio(reader *bufio.Reader, writer *bufio.Writer, std
|
|||||||
b, err := json.Marshal(termResize)
|
b, err := json.Marshal(termResize)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
defer restoreTerminal(oldTermState)
|
defer restoreTerminal(oldTermState)
|
||||||
|
sendGenericError(ecChan)
|
||||||
errChan <- err
|
errChan <- err
|
||||||
}
|
}
|
||||||
_, err = varlinkResizeWriter.Write(b)
|
_, err = varlinkResizeWriter.Write(b)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
defer restoreTerminal(oldTermState)
|
defer restoreTerminal(oldTermState)
|
||||||
|
sendGenericError(ecChan)
|
||||||
errChan <- err
|
errChan <- err
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1096,6 +1099,7 @@ func configureVarlinkAttachStdio(reader *bufio.Reader, writer *bufio.Writer, std
|
|||||||
go func() {
|
go func() {
|
||||||
if _, err := io.Copy(varlinkStdinWriter, stdin); err != nil {
|
if _, err := io.Copy(varlinkStdinWriter, stdin); err != nil {
|
||||||
defer restoreTerminal(oldTermState)
|
defer restoreTerminal(oldTermState)
|
||||||
|
sendGenericError(ecChan)
|
||||||
errChan <- err
|
errChan <- err
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1103,3 +1107,9 @@ func configureVarlinkAttachStdio(reader *bufio.Reader, writer *bufio.Writer, std
|
|||||||
}
|
}
|
||||||
return errChan
|
return errChan
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func sendGenericError(ecChan chan int) {
|
||||||
|
if ecChan != nil {
|
||||||
|
ecChan <- define.ExecErrorCodeGeneric
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Reference in New Issue
Block a user