[PATCH 05/11] conf: Fix type of @present in _virDomainTimerDef struct
Ján Tomko
jtomko at redhat.com
Mon Jan 24 14:13:16 UTC 2022
On a Monday in 2022, Michal Privoznik wrote:
>In the _virDomainTimerDef structure we have @present member which
>is like virTristateBool, except it's an integer and has values
>shifted by one. This is harder to read. Retype the member to
>virTristateBool which we are familiar with.
>
>Signed-off-by: Michal Privoznik <mprivozn at redhat.com>
>---
> src/conf/domain_conf.c | 27 ++++++++++-----------------
> src/conf/domain_conf.h | 2 +-
> src/libxl/libxl_conf.c | 2 +-
> src/libxl/xen_common.c | 13 +++++++++----
> src/lxc/lxc_cgroup.c | 2 +-
> src/lxc/lxc_controller.c | 2 +-
> src/qemu/qemu_command.c | 20 ++++++++++----------
> src/qemu/qemu_validate.c | 6 +++---
> 8 files changed, 36 insertions(+), 38 deletions(-)
>
>diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
>index bb887d4a3b..fbe21c4fd2 100644
>--- a/src/conf/domain_conf.c
>+++ b/src/conf/domain_conf.c
>@@ -20481,8 +20474,9 @@ virDomainTimerDefCheckABIStability(virDomainTimerDef *src,
>
> if (src->present != dst->present) {
> virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
>- _("Target timer presence %d does not match source %d"),
>- dst->present, src->present);
>+ _("Target timer presence %s does not match source %s"),
Since you're changing the translatable message, please add apostrophes
around the %s specifiers.
>+ virTristateBoolTypeToString(dst->present),
>+ virTristateBoolTypeToString(src->present));
> return false;
> }
>
>@@ -26119,10 +26113,9 @@ virDomainTimerDefFormat(virBuffer *buf,
> }
> virBufferAsprintf(buf, "<timer name='%s'", name);
>
>- if (def->present == 0) {
>- virBufferAddLit(buf, " present='no'");
>- } else if (def->present == 1) {
>- virBufferAddLit(buf, " present='yes'");
>+ if (def->present) {
Consider the more explicit
def->present != VIR_TRISTATE_BOOL_ABSENT
>+ virBufferAsprintf(buf, " present='%s'",
>+ virTristateBoolTypeToString(def->present));
> }
>
> if (def->tickpolicy != -1) {
>@@ -625,7 +625,11 @@ xenParseHypervisorFeatures(virConf *conf, virDomainDef *def)
>
> timer = g_new0(virDomainTimerDef, 1);
> timer->name = VIR_DOMAIN_TIMER_NAME_HPET;
>- timer->present = val;
>+ if (val == 1) {
>+ timer->present = VIR_TRISTATE_BOOL_YES;
>+ } else {
>+ timer->present = VIR_TRISTATE_BOOL_NO;
>+ }
You can use virTristateBoolFromBool - we're inside if (val != -1)
> timer->tickpolicy = -1;
> timer->mode = -1;
> timer->track = -1;
Jano
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 488 bytes
Desc: not available
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20220124/cb3b8755/attachment-0001.sig>
More information about the libvir-list
mailing list