The attach-disk command used with parameter --cache created an invalid
XML snippet as the beginning of the <driver> element was not printed
when used solely with --cache and no other attribute to driver.
---
tools/virsh.c | 16 ++++++++--------
1 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/tools/virsh.c b/tools/virsh.c
index 98305c0..1862500 100644
--- a/tools/virsh.c
+++ b/tools/virsh.c
@@ -14765,18 +14765,18 @@ cmdAttachDisk(vshControl *ctl, const vshCmd *cmd)
virBufferAddLit(&buf, " rawio='yes'");
virBufferAddLit(&buf, ">\n");
- if (driver || subdriver)
+ if (driver || subdriver || cache) {
virBufferAsprintf(&buf, " <driver");
- if (driver)
- virBufferAsprintf(&buf, " name='%s'", driver);
- if (subdriver)
- virBufferAsprintf(&buf, " type='%s'", subdriver);
- if (cache)
- virBufferAsprintf(&buf, " cache='%s'", cache);
+ if (driver)
+ virBufferAsprintf(&buf, " name='%s'", driver);
+ if (subdriver)
+ virBufferAsprintf(&buf, " type='%s'", subdriver);
+ if (cache)
+ virBufferAsprintf(&buf, " cache='%s'", cache);
- if (driver || subdriver || cache)
virBufferAddLit(&buf, "/>\n");
+ }
if (source)
virBufferAsprintf(&buf, " <source %s='%s'/>\n",
--
1.7.8.6