]> xenbits.xensource.com Git - libvirt.git/commitdiff
Fix a crash when cloning a volume with no backing store
authorJán Tomko <jtomko@redhat.com>
Fri, 1 Aug 2014 13:24:20 +0000 (15:24 +0200)
committerJán Tomko <jtomko@redhat.com>
Fri, 1 Aug 2014 13:42:28 +0000 (15:42 +0200)
Introduced by commit 15213d1, not yet released.

src/storage/storage_backend.c
tests/storagevolxml2argvdata/qcow2-convert-nobacking.argv [new file with mode: 0644]
tests/storagevolxml2argvtest.c

index 27b02cb410f8e9cc24a286478319273c07ee8041..5cada391be14a8801619178545068ea3c51bd9ee 100644 (file)
@@ -887,7 +887,7 @@ virStorageBackendCreateQemuImgCmd(virConnectPtr conn,
          * backing store, not really sure what use it serves though, and it
          * may cause issues with lvm. Untested essentially.
          */
-        if (inputvol &&
+        if (inputvol && inputvol->target.backingStore &&
             STRNEQ_NULLABLE(inputvol->target.backingStore->path,
                             vol->target.backingStore->path)) {
             virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
diff --git a/tests/storagevolxml2argvdata/qcow2-convert-nobacking.argv b/tests/storagevolxml2argvdata/qcow2-convert-nobacking.argv
new file mode 100644 (file)
index 0000000..fd1f4c0
--- /dev/null
@@ -0,0 +1,2 @@
+qemu-img convert -f raw -O qcow2 -o encryption=on \
+/var/lib/libvirt/images/sparse.img /var/lib/libvirt/images/OtherDemo.img
index 2a45f6f3cab250892232e3e775fc155a7cd4d0ad..f9d2d2dd3216e7aff75ed8a827e693b1d9e9a07a 100644 (file)
@@ -235,6 +235,9 @@ mymain(void)
     DO_TEST("pool-dir", "vol-qcow2-nobacking",
             "pool-dir", "vol-file",
             "qcow2-nobacking-convert-prealloc", flags, FMT_OPTIONS);
+    DO_TEST_FAIL("pool-dir", "vol-qcow2",
+                 "pool-dir", "vol-file",
+                 "qcow2-convert-nobacking", 0, FMT_OPTIONS);
     DO_TEST_FAIL("pool-dir", "vol-qcow2",
                  "pool-dir", "vol-file",
                  "qcow2-convert-prealloc", flags, FMT_OPTIONS);