If the creation of the commandline failed, libvirt always reported "out
of memory" from the virCommandToString function rather than the proper
error that happened in virStorageBackendCreateQemuImgCmd. Error out
earlier.
---
 tests/storagevolxml2argvtest.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/tests/storagevolxml2argvtest.c b/tests/storagevolxml2argvtest.c
index e1507b4..92ab2f2 100644
--- a/tests/storagevolxml2argvtest.c
+++ b/tests/storagevolxml2argvtest.c
@@ -60,9 +60,7 @@ testCompareXMLToArgvFiles(bool shouldFail,

     cmd = virStorageBackendCreateQemuImgCmd(conn, &poolobj, vol, inputvol,
                                             flags, create_tool, imgformat);
-
-    actualCmdline = virCommandToString(cmd);
-    if (!actualCmdline) {
+    if (!cmd) {
         if (shouldFail) {
             virResetLastError();
             ret = 0;
@@ -70,6 +68,9 @@ testCompareXMLToArgvFiles(bool shouldFail,
         goto cleanup;
     }

+    if (!(actualCmdline = virCommandToString(cmd)))
+        goto cleanup;
+
     len = virtTestLoadFile(cmdline, &expectedCmdline);
     if (len < 0)
         goto cleanup;
-- 
1.8.2.1

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list

Reply via email to