io: error_prepend() in qio_channel_readv_full_all() causes segfault
authorJagannathan Raman <jag.raman@oracle.com>
Fri, 12 Feb 2021 11:16:07 +0000 (06:16 -0500)
committerEric Blake <eblake@redhat.com>
Fri, 12 Feb 2021 13:50:59 +0000 (07:50 -0600)
commitc90e3512a4683345a8e7074961d8275ceaec578d
tree06a7ead3581b417b420d43ca65b5014e96308b2e
parente055a5c8dc53212ede81f2dd828c688ee4f7c00b
io: error_prepend() in qio_channel_readv_full_all() causes segfault

Using error_prepend() in qio_channel_readv_full_all() causes a segfault
as errp is not set when ret is 0. This results in the failure of iotest
83. Replacing with error_setg() fixes the problem.

Additionally, removes a full stop at the end of error message

Reported-by: Max Reitz <mreitz@redhat.com>
Signed-off-by: Jagannathan Raman <jag.raman@oracle.com>
Fixes: bebab91ebdfc591f8793a9a17370df1bfbe8b2ca
  (io: add qio_channel_readv_full_all_eof & qio_channel_readv_full_all helpers)
Message-Id: <be476bcdb99e820fec0fa09fe8f04c9dd3e62473.1613128220.git.jag.raman@oracle.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Signed-off-by: Eric Blake <eblake@redhat.com>
io/channel.c