summary refs log tree commit diff stats
path: root/scripts/qapi.py
diff options
context:
space:
mode:
authorLaszlo Ersek <lersek@redhat.com>2013-07-16 20:19:40 +0200
committerAnthony Liguori <aliguori@us.ibm.com>2013-07-18 11:22:56 -0500
commitac8c26f633b01bb32cdf347f9dbd5a80c6712925 (patch)
tree37a4d6becbd45b50864e15cdb72d2ab7eb597c8c /scripts/qapi.py
parent0d185e638861bd9b05b2abb43774a368cadabd38 (diff)
downloadfocaccia-qemu-ac8c26f633b01bb32cdf347f9dbd5a80c6712925.tar.gz
focaccia-qemu-ac8c26f633b01bb32cdf347f9dbd5a80c6712925.zip
char: io_channel_send: don't lose written bytes
The g_io_channel_write_chars() documentation states,

  bytes_written: The number of bytes written. This can be nonzero even if
                 the return value is not G_IO_STATUS_NORMAL. [...]

io_channel_send() could lose such bytes before.

Furthermore, the (status == G_IO_STATUS_EOF) condition used to evaluate to
constant false whenever it was reached. When that condition actually held,
it always led to -1 / EINVAL. This patch (almost) distinguishes
G_IO_STATUS_EOF only when no bytes have been written, and then treats it
as an error.

Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Amit Shah <amit.shah@redhat.com>
Reviewed-by: Anthony Liguori <aliguori@us.ibm.com>
Message-id: 1373998781-29561-2-git-send-email-lersek@redhat.com
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Diffstat (limited to 'scripts/qapi.py')
0 files changed, 0 insertions, 0 deletions