From: Kirill Shchetiniuk <kshch...@redhat.com>

Previously, the fullscreen option were parsed as a tristate but stored
as a bool type, changed the fullscreen option type to tristate bool to
avoid unnecessary type convertions.

Signed-off-by: Kirill Shchetiniuk <kshch...@redhat.com>
---
 src/conf/domain_conf.c  | 9 ++++-----
 src/conf/domain_conf.h  | 2 +-
 src/qemu/qemu_command.c | 2 +-
 3 files changed, 6 insertions(+), 7 deletions(-)

diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
index c16aa279fb..32a358d72c 100644
--- a/src/conf/domain_conf.c
+++ b/src/conf/domain_conf.c
@@ -11891,15 +11891,13 @@ virDomainGraphicsDefParseXMLSDL(virDomainGraphicsDef 
*def,
 {
     VIR_XPATH_NODE_AUTORESTORE(ctxt)
     xmlNodePtr glNode;
-    virTristateBool fullscreen;
 
     ctxt->node = node;
 
     if (virXMLPropTristateBool(node, "fullscreen", VIR_XML_PROP_NONE,
-                               &fullscreen) < 0)
+                               &def->data.sdl.fullscreen) < 0)
         return -1;
 
-    virTristateBoolToBool(fullscreen, &def->data.sdl.fullscreen);
     def->data.sdl.xauth = virXMLPropString(node, "xauth");
     def->data.sdl.display = virXMLPropString(node, "display");
 
@@ -26956,8 +26954,9 @@ virDomainGraphicsDefFormatSDL(virBuffer *attrBuf,
 
     virBufferEscapeString(attrBuf, " xauth='%s'", def->data.sdl.xauth);
 
-    if (def->data.sdl.fullscreen)
-        virBufferAddLit(attrBuf, " fullscreen='yes'");
+    if (def->data.sdl.fullscreen != VIR_TRISTATE_BOOL_ABSENT)
+        virBufferAsprintf(attrBuf, " fullscreen='%s'",
+                          
virTristateBoolTypeToString(def->data.sdl.fullscreen));
 
     virDomainGraphicsDefFormatGL(childBuf, def->data.sdl.gl, NULL);
 }
diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h
index 58b97a2b54..8df404dc42 100644
--- a/src/conf/domain_conf.h
+++ b/src/conf/domain_conf.h
@@ -2036,7 +2036,7 @@ struct _virDomainGraphicsDef {
         struct {
             char *display;
             char *xauth;
-            bool fullscreen;
+            virTristateBool fullscreen;
             virTristateBool gl;
         } sdl;
         struct {
diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c
index fec48edfc1..895af0ff6d 100644
--- a/src/qemu/qemu_command.c
+++ b/src/qemu/qemu_command.c
@@ -8108,8 +8108,7 @@ qemuBuildGraphicsSDLCommandLine(virQEMUDriverConfig *cfg 
G_GNUC_UNUSED,
         virCommandAddEnvPair(cmd, "XAUTHORITY", graphics->data.sdl.xauth);
     if (graphics->data.sdl.display)
         virCommandAddEnvPair(cmd, "DISPLAY", graphics->data.sdl.display);
-    if (graphics->data.sdl.fullscreen)
+    if (graphics->data.sdl.fullscreen == VIR_TRISTATE_BOOL_YES)
         virCommandAddArg(cmd, "-full-screen");
 
     virCommandAddArg(cmd, "-display");
--
2.49.0

Reply via email to