If we jump to cleanup before allocating the 'result', then the call
to virBlkioDeviceArrayClear will deref result causing a problem.
Signed-off-by: John Ferlan <jferlan(a)redhat.com>
---
src/qemu/qemu_driver.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c
index 362d1ab..373b4d7 100644
--- a/src/qemu/qemu_driver.c
+++ b/src/qemu/qemu_driver.c
@@ -7682,8 +7682,10 @@ qemuDomainParseBlkioDeviceStr(char *blkioDeviceStr, const char
*type,
_("unable to parse blkio device '%s'
'%s'"),
type, blkioDeviceStr);
cleanup:
- virBlkioDeviceArrayClear(result, ndevices);
- VIR_FREE(result);
+ if (result) {
+ virBlkioDeviceArrayClear(result, ndevices);
+ VIR_FREE(result);
+ }
return -1;
}
--
1.9.3