]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
Avoid leak in qemuParseRBDString on failure of qemuAddRBDHost
authorDaniel P. Berrange <berrange@redhat.com>
Tue, 24 Sep 2013 15:24:06 +0000 (16:24 +0100)
committerDaniel P. Berrange <berrange@redhat.com>
Wed, 25 Sep 2013 14:49:13 +0000 (15:49 +0100)
If qemuAddRBDHost fails due to parsing problems or OOM, then
qemuParseRBDString cleanup is skipped causing a memory leak.

Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
src/qemu/qemu_command.c

index 1a364acf150106f1231103bdff5e52cf22e87b57..00ca93e8c77efc05691a1b756bec2be5ab8f751f 100644 (file)
@@ -3404,9 +3404,9 @@ static int qemuParseRBDString(virDomainDiskDefPtr disk)
                         break;
                     }
                 }
-                if (qemuAddRBDHost(disk, h) < 0) {
-                    return -1;
-                }
+                if (qemuAddRBDHost(disk, h) < 0)
+                    goto error;
+
                 h = sep;
             }
         }