Blame SOURCES/libvirt-qemu-validate-Enforce-compile-time-switch-type-checking-for-videos.patch

edecca
From 5c8a577f4abefca0b3d4ec2cb7eb5a7a73e9868e Mon Sep 17 00:00:00 2001
edecca
Message-Id: <5c8a577f4abefca0b3d4ec2cb7eb5a7a73e9868e@dist-git>
edecca
From: Erik Skultety <eskultet@redhat.com>
edecca
Date: Thu, 19 Jul 2018 15:03:53 +0200
edecca
Subject: [PATCH] qemu: validate: Enforce compile time switch type checking for
edecca
 videos
edecca
MIME-Version: 1.0
edecca
Content-Type: text/plain; charset=UTF-8
edecca
Content-Transfer-Encoding: 8bit
edecca
edecca
There wasn't an explicit type case to the video type enum in
edecca
qemuDomainDeviceDefValidateVideo, _TYPE_GOP was also missing from the
edecca
switch.
edecca
edecca
Signed-off-by: Erik Skultety <eskultet@redhat.com>
edecca
Reviewed-by: John Ferlan <jferlan@redhat.com>
edecca
(cherry picked from commit 767f9e1449b1a36111532847f0c62dc758263c42)
edecca
edecca
https://bugzilla.redhat.com/show_bug.cgi?id=1475770
edecca
Signed-off-by: Erik Skultety <eskultet@redhat.com>
edecca
Reviewed-by: Ján Tomko <jtomko@redhat.com>
edecca
---
edecca
 src/conf/domain_conf.h | 2 +-
edecca
 src/qemu/qemu_domain.c | 3 ++-
edecca
 2 files changed, 3 insertions(+), 2 deletions(-)
edecca
edecca
diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h
edecca
index 1fc1734bcc..0f10e242fd 100644
edecca
--- a/src/conf/domain_conf.h
edecca
+++ b/src/conf/domain_conf.h
edecca
@@ -1453,7 +1453,7 @@ struct _virDomainVideoDriverDef {
edecca
 };
edecca
 
edecca
 struct _virDomainVideoDef {
edecca
-    int type;
edecca
+    int type;   /* enum virDomainVideoType */
edecca
     unsigned int ram;  /* kibibytes (multiples of 1024) */
edecca
     unsigned int vram; /* kibibytes (multiples of 1024) */
edecca
     unsigned int vram64; /* kibibytes (multiples of 1024) */
edecca
diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c
edecca
index dec057e021..a42a6df91b 100644
edecca
--- a/src/qemu/qemu_domain.c
edecca
+++ b/src/qemu/qemu_domain.c
edecca
@@ -4470,10 +4470,11 @@ qemuDomainDeviceDefValidateHostdev(const virDomainHostdevDef *hostdev,
edecca
 static int
edecca
 qemuDomainDeviceDefValidateVideo(const virDomainVideoDef *video)
edecca
 {
edecca
-    switch (video->type) {
edecca
+    switch ((virDomainVideoType) video->type) {
edecca
     case VIR_DOMAIN_VIDEO_TYPE_XEN:
edecca
     case VIR_DOMAIN_VIDEO_TYPE_VBOX:
edecca
     case VIR_DOMAIN_VIDEO_TYPE_PARALLELS:
edecca
+    case VIR_DOMAIN_VIDEO_TYPE_GOP:
edecca
     case VIR_DOMAIN_VIDEO_TYPE_DEFAULT:
edecca
         virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
edecca
                        _("video type '%s' is not supported with QEMU"),
edecca
-- 
edecca
2.18.0
edecca