osdep: make readv_writev() work with partial read/write
authorMarc-André Lureau <marcandre.lureau@redhat.com>
Thu, 6 Oct 2022 11:36:52 +0000 (15:36 +0400)
committerMarc-André Lureau <marcandre.lureau@redhat.com>
Wed, 12 Oct 2022 15:22:00 +0000 (19:22 +0400)
commitc1f798091319c74cd9a90f36af604c782e7ee7bd
tree62b386f2c9ed9f8f9a22e29c190dc26f7d0df773
parent4db99c9d9cb6ab6290f14609e23d079219102742
osdep: make readv_writev() work with partial read/write

With a pipe or other reasons, read/write may return less than the
requested bytes. This happens with the test-io-channel-command test on
Windows. glib spawn code uses a binary pipe of 4096 bytes, and the first
read returns that much (although more are requested), for some unclear
reason...

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Message-Id: <20221006113657.2656108-2-marcandre.lureau@redhat.com>
util/osdep.c