From 8fcee47807d29008632a7ad918cbe93ac0a20597 Mon Sep 17 00:00:00 2001 From: Michal Privoznik Date: Wed, 8 Jan 2020 09:42:47 +0100 Subject: [PATCH] qemu_firmware: Accept int in qemuFirmwareOSInterfaceTypeFromOsDefFirmware() MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The point of this function is to translate virDomainOsDefFirmware enum to qemuFirmwareOSInterface enum. However, with my commit v5.10.0-507-g8e1804f9f6 we are passing a variable type of virDomainLoader enum. Make the function accept both enums and make the enum members correspond to each other. This fixes clang build. Signed-off-by: Michal Privoznik Reviewed-by: Ján Tomko --- src/conf/domain_conf.h | 6 ++++-- src/qemu/qemu_firmware.c | 2 +- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h index c3a6ccdcda..76d6ef8e48 100644 --- a/src/conf/domain_conf.h +++ b/src/conf/domain_conf.h @@ -1928,12 +1928,14 @@ struct _virDomainOSEnv { typedef enum { VIR_DOMAIN_OS_DEF_FIRMWARE_NONE = 0, - VIR_DOMAIN_OS_DEF_FIRMWARE_BIOS, - VIR_DOMAIN_OS_DEF_FIRMWARE_EFI, + VIR_DOMAIN_OS_DEF_FIRMWARE_BIOS = VIR_DOMAIN_LOADER_TYPE_ROM, + VIR_DOMAIN_OS_DEF_FIRMWARE_EFI = VIR_DOMAIN_LOADER_TYPE_PFLASH, VIR_DOMAIN_OS_DEF_FIRMWARE_LAST } virDomainOsDefFirmware; +G_STATIC_ASSERT((int)VIR_DOMAIN_OS_DEF_FIRMWARE_LAST == (int)VIR_DOMAIN_LOADER_TYPE_LAST); + VIR_ENUM_DECL(virDomainOsDefFirmware); struct _virDomainOSDef { diff --git a/src/qemu/qemu_firmware.c b/src/qemu/qemu_firmware.c index a835fe6b4a..7fb57913e8 100644 --- a/src/qemu/qemu_firmware.c +++ b/src/qemu/qemu_firmware.c @@ -929,7 +929,7 @@ qemuFirmwareMatchesMachineArch(const qemuFirmware *fw, static qemuFirmwareOSInterface -qemuFirmwareOSInterfaceTypeFromOsDefFirmware(virDomainOsDefFirmware fw) +qemuFirmwareOSInterfaceTypeFromOsDefFirmware(int fw) { switch (fw) { case VIR_DOMAIN_OS_DEF_FIRMWARE_BIOS: -- GitLab