io: set correct error object in background reader test thread
authorDaniel P. Berrange <berrange@redhat.com>
Tue, 8 Mar 2016 12:06:45 +0000 (12:06 +0000)
committerDaniel P. Berrange <berrange@redhat.com>
Thu, 10 Mar 2016 17:10:18 +0000 (17:10 +0000)
The reader thread was accidentally setting the error pointer
intended for the writer thread. If both threads set errors
this would result in QEMU abort'ing due to the error already
being set.

Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
tests/io-channel-helpers.c

index 844066904bb1251b06d8ade8cc392f0860c92366..d5137920688ac0a50e2e5d6af05475398ff789f7 100644 (file)
@@ -132,7 +132,7 @@ static gpointer test_io_thread_reader(gpointer opaque)
 
         if (ret == QIO_CHANNEL_ERR_BLOCK) {
             if (data->blocking) {
-                error_setg(&data->writeerr,
+                error_setg(&data->readerr,
                            "Unexpected I/O blocking");
                 break;
             } else {