Signed-off-by: Nia Alarie <nia.ala...@gmail.com> --- hw/block/xen_disk.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/hw/block/xen_disk.c b/hw/block/xen_disk.c index f74fcd42d1..a9ec0ad6eb 100644 --- a/hw/block/xen_disk.c +++ b/hw/block/xen_disk.c @@ -32,6 +32,7 @@ #include "qapi/error.h" #include "qapi/qmp/qdict.h" #include "qapi/qmp/qstring.h" +#include "qemu/cutils.h" #include "trace.h" /* ------------------------------------------------------------- */ @@ -1010,7 +1011,10 @@ static int blk_init(struct XenDevice *xendev) blkdev->devtype = xenstore_read_be_str(&blkdev->xendev, "device-type"); } directiosafe = xenstore_read_be_str(&blkdev->xendev, "direct-io-safe"); - blkdev->directiosafe = (directiosafe && atoi(directiosafe)); + + if (directiosafe && qemu_strtoi(directiosafe, NULL, 10, &blkdev->directiosafe)) { + goto out_error; + } /* do we have all we need? */ if (blkdev->params == NULL || -- 2.16.2