#include "virnuma.h"
#include "dirname.h"
#include "netdev_bandwidth_conf.h"
+#include "virqemu.h"
#define VIR_FROM_THIS VIR_FROM_QEMU
virBitmapPtr created = NULL;
virQEMUDriverConfigPtr cfg = virQEMUDriverGetConfig(driver);
int ret = -1;
+ virBuffer buf = VIR_BUFFER_INITIALIZER;
if (!(qemuImgPath = qemuFindQemuImgBinary(driver)))
goto cleanup;
NULL)))
goto cleanup;
- /* adds cmd line arg: backing_file=/path/to/backing/file,backing_fmd=format */
- virCommandAddArgFormat(cmd, "backing_file=%s,backing_fmt=%s",
- defdisk->src->path,
- virStorageFileFormatTypeToString(defdisk->src->format));
+ /* adds cmd line arg: backing_fmt=format,backing_file=/path/to/backing/file */
+ virBufferAsprintf(&buf, "backing_fmt=%s,backing_file=",
+ virStorageFileFormatTypeToString(defdisk->src->format));
+ virQEMUBuildBufferEscapeComma(&buf, defdisk->src->path);
+ virCommandAddArgBuffer(cmd, &buf);
/* adds cmd line args: /path/to/target/file */
- virCommandAddArg(cmd, snapdisk->src->path);
+ virQEMUBuildBufferEscapeComma(&buf, snapdisk->src->path);
+ virCommandAddArgBuffer(cmd, &buf);
/* If the target does not exist, we're going to create it possibly */
if (!virFileExists(snapdisk->src->path))
ret = 0;
cleanup:
+ virBufferFreeAndReset(&buf);
virCommandFree(cmd);
/* unlink images if creation has failed */