qemu-io: Return non-zero exit code on failure
commitb7aa1315198de1bd2c5f457d2e2c6cd007b3f430
authorNir Soffer <nirsof@gmail.com>
Wed, 1 Feb 2017 00:31:18 +0000 (1 02:31 +0200)
committerMax Reitz <mreitz@redhat.com>
Sat, 11 Feb 2017 23:47:42 +0000 (12 00:47 +0100)
treee80ce3960a7ef49662b9c5791e80bab5709ae0d5
parentf67409a5bb43ebe74401fa8e187267eb0f139293
qemu-io: Return non-zero exit code on failure

The result of openfile was not checked, leading to failure deep in the
actual command with confusing error message, and exiting with exit code 0.

Here is a simple example - trying to read with the wrong format:

    $ touch file
    $ qemu-io -f qcow2 -c 'read -P 1 0 1024' file; echo $?
    can't open device file: Image is not in qcow2 format
    no file open, try 'help open'
    0

With this patch, we fail earlier with exit code 1:

    $ ./qemu-io -f qcow2 -c 'read -P 1 0 1024' file; echo $?
    can't open device file: Image is not in qcow2 format
    1

Failing earlier, we don't log this error now:

    no file open, try 'help open'

But some tests expected it; the line was removed from the test output.

Signed-off-by: Nir Soffer <nirsof@gmail.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Message-id: 20170201003120.23378-2-nirsof@gmail.com
Reviewed-by: Max Reitz <mreitz@redhat.com>
Signed-off-by: Max Reitz <mreitz@redhat.com>
13 files changed:
qemu-io.c
tests/qemu-iotests/059.out
tests/qemu-iotests/070.out
tests/qemu-iotests/075.out
tests/qemu-iotests/076.out
tests/qemu-iotests/078.out
tests/qemu-iotests/080.out
tests/qemu-iotests/083.out
tests/qemu-iotests/088.out
tests/qemu-iotests/092.out
tests/qemu-iotests/116.out
tests/qemu-iotests/131.out
tests/qemu-iotests/140.out