[libvirt] [PATCH] conf: Fix incorrect spice graphic XML format on compression options

Jiri Denemark jdenemar at redhat.com
Tue May 31 12:24:42 UTC 2011


On Tue, May 24, 2011 at 13:43:30 +0200, Michal Privoznik wrote:
> If spice graphics has no <channel> elements, the output graphics XML
> is messed up. To prevent this, we need to end the <graphics> element
> just before adding any compression selecting elements.
> ---
>  src/conf/domain_conf.c |    6 ++++++
>  1 files changed, 6 insertions(+), 0 deletions(-)
> 
> diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
> index 3f2fb11..2800db5 100644
> --- a/src/conf/domain_conf.c
> +++ b/src/conf/domain_conf.c
> @@ -8082,6 +8082,12 @@ virDomainGraphicsDefFormat(virBufferPtr buf,
>                                virDomainGraphicsSpiceChannelNameTypeToString(i),
>                                virDomainGraphicsSpiceChannelModeTypeToString(mode));
>          }
> +        if (!children && (def->data.spice.image || def->data.spice.jpeg ||
> +                          def->data.spice.zlib || def->data.spice.playback ||
> +                          def->data.spice.streaming)) {
> +            virBufferAddLit(buf, ">\n");
> +            children = 1;
> +        }
>          if (def->data.spice.image)
>              virBufferAsprintf(buf, "      <image compression='%s'/>\n",
>                                virDomainGraphicsSpiceImageCompressionTypeToString(def->data.spice.image));

I feel like it's about time to rework all XML formating to just create a tree
of XML nodes and use one universal function to transform the tree into it's
string representation (aka xmlSaveTree() from libxml). Am I the only one?

ACK

Jirka




More information about the libvir-list mailing list