Now we are able to move the rest into virDomainGraphicsDefFormatSpice
without breaking order of elements in the resulting XML.
Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
---
src/conf/domain_conf.c | 81 ++++++++++++++++++++----------------------
1 file changed, 39 insertions(+), 42 deletions(-)
diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
index ad3a44b9b1..34ed62cc99 100644
--- a/src/conf/domain_conf.c
+++ b/src/conf/domain_conf.c
@@ -26554,7 +26554,9 @@ virDomainGraphicsDefFormatSpice(virBuffer *attrBuf,
virDomainGraphicsDef *def,
unsigned int flags)
{
+ g_auto(virBuffer) spiceBuf = VIR_BUFFER_INITIALIZER;
virDomainGraphicsListenDef *glisten = virDomainGraphicsGetListen(def, 0);
+ size_t i;
if (!glisten) {
virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
@@ -26609,6 +26611,43 @@ virDomainGraphicsDefFormatSpice(virBuffer *attrBuf,
virDomainGraphicsDefFormatListnes(childBuf, def, flags);
+ for (i = 0; i < VIR_DOMAIN_GRAPHICS_SPICE_CHANNEL_LAST; i++) {
+ int mode = def->data.spice.channels[i];
+ if (mode == VIR_DOMAIN_GRAPHICS_SPICE_CHANNEL_MODE_ANY)
+ continue;
+
+ virBufferAsprintf(&spiceBuf, " name='%s' mode='%s'",
+ virDomainGraphicsSpiceChannelNameTypeToString(i),
+ virDomainGraphicsSpiceChannelModeTypeToString(mode));
+
+ virXMLFormatElement(childBuf, "channel", &spiceBuf, NULL);
+ }
+
+#define FORMAT_SPICE_FEATURE(name, attr, value, toStringFunc) \
+ if (value) { \
+ virBufferAsprintf(&spiceBuf, " " attr "='%s'", toStringFunc(value)); \
+ } \
+ virXMLFormatElement(childBuf, name, &spiceBuf, NULL);
+
+ FORMAT_SPICE_FEATURE("image", "compression", def->data.spice.image,
+ virDomainGraphicsSpiceImageCompressionTypeToString);
+ FORMAT_SPICE_FEATURE("jpeg", "compression", def->data.spice.jpeg,
+ virDomainGraphicsSpiceJpegCompressionTypeToString);
+ FORMAT_SPICE_FEATURE("zlib", "compression", def->data.spice.zlib,
+ virDomainGraphicsSpiceZlibCompressionTypeToString);
+ FORMAT_SPICE_FEATURE("playback", "compression", def->data.spice.playback,
+ virTristateSwitchTypeToString);
+ FORMAT_SPICE_FEATURE("streaming", "mode", def->data.spice.streaming,
+ virDomainGraphicsSpiceStreamingModeTypeToString);
+ FORMAT_SPICE_FEATURE("mouse", "mode", def->data.spice.mousemode,
+ virDomainMouseModeTypeToString);
+ FORMAT_SPICE_FEATURE("clipboard", "copypaste", def->data.spice.copypaste,
+ virTristateBoolTypeToString);
+ FORMAT_SPICE_FEATURE("filetransfer", "enable", def->data.spice.filetransfer,
+ virTristateBoolTypeToString);
+
+ virDomainGraphicsDefFormatGL(childBuf, def->data.spice.gl, def->data.spice.rendernode);
+
return 0;
}
@@ -26645,7 +26684,6 @@ virDomainGraphicsDefFormat(virBuffer *buf,
g_auto(virBuffer) attrBuf = VIR_BUFFER_INITIALIZER;
g_auto(virBuffer) childBuf = VIR_BUFFER_INIT_CHILD(buf);
const char *type = virDomainGraphicsTypeToString(def->type);
- size_t i;
if (!type) {
virReportError(VIR_ERR_INTERNAL_ERROR,
@@ -26690,47 +26728,6 @@ virDomainGraphicsDefFormat(virBuffer *buf,
break;
}
- if (def->type == VIR_DOMAIN_GRAPHICS_TYPE_SPICE) {
- g_auto(virBuffer) spiceBuf = VIR_BUFFER_INITIALIZER;
-
- for (i = 0; i < VIR_DOMAIN_GRAPHICS_SPICE_CHANNEL_LAST; i++) {
- int mode = def->data.spice.channels[i];
- if (mode == VIR_DOMAIN_GRAPHICS_SPICE_CHANNEL_MODE_ANY)
- continue;
-
- virBufferAsprintf(&spiceBuf, " name='%s' mode='%s'",
- virDomainGraphicsSpiceChannelNameTypeToString(i),
- virDomainGraphicsSpiceChannelModeTypeToString(mode));
-
- virXMLFormatElement(&childBuf, "channel", &spiceBuf, NULL);
- }
-
-#define FORMAT_SPICE_FEATURE(name, attr, value, toStringFunc) \
- if (value) { \
- virBufferAsprintf(&spiceBuf, " " attr "='%s'", toStringFunc(value)); \
- } \
- virXMLFormatElement(&childBuf, name, &spiceBuf, NULL);
-
- FORMAT_SPICE_FEATURE("image", "compression", def->data.spice.image,
- virDomainGraphicsSpiceImageCompressionTypeToString);
- FORMAT_SPICE_FEATURE("jpeg", "compression", def->data.spice.jpeg,
- virDomainGraphicsSpiceJpegCompressionTypeToString);
- FORMAT_SPICE_FEATURE("zlib", "compression", def->data.spice.zlib,
- virDomainGraphicsSpiceZlibCompressionTypeToString);
- FORMAT_SPICE_FEATURE("playback", "compression", def->data.spice.playback,
- virTristateSwitchTypeToString);
- FORMAT_SPICE_FEATURE("streaming", "mode", def->data.spice.streaming,
- virDomainGraphicsSpiceStreamingModeTypeToString);
- FORMAT_SPICE_FEATURE("mouse", "mode", def->data.spice.mousemode,
- virDomainMouseModeTypeToString);
- FORMAT_SPICE_FEATURE("clipboard", "copypaste", def->data.spice.copypaste,
- virTristateBoolTypeToString);
- FORMAT_SPICE_FEATURE("filetransfer", "enable", def->data.spice.filetransfer,
- virTristateBoolTypeToString);
-
- virDomainGraphicsDefFormatGL(&childBuf, def->data.spice.gl, def->data.spice.rendernode);
- }
-
if (def->type == VIR_DOMAIN_GRAPHICS_TYPE_VNC)
virDomainGraphicsDefFormatAudio(&childBuf, def->data.vnc.audioId);
--
2.48.1