Since cmdDetachDisk() calls into vshPrepareDiskXML() with
type == VSH_PREPARE_DISK_XML_NONE && source == NULL this would result
into skipping all the checks and effectively turn the function into a
XML formatter.
This patch changes the code to use the formatter directly so that the
function can be refactored in a easier way.
if (!(disk_node = vshFindDisk(doc, target, VSH_FIND_DISK_NORMAL)))
goto cleanup;
- if (!(disk_xml = vshPrepareDiskXML(disk_node, NULL, NULL,
- VSH_PREPARE_DISK_XML_NONE)))
+ if (!(disk_xml = virXMLNodeToString(NULL, disk_node))) {
+ vshSaveLibvirtError();
goto cleanup;
+ }
if (flags != 0 || current)
ret = virDomainDetachDeviceFlags(dom, disk_xml, flags);