> 14. 7. 2025 v 19:09, Ján Tomko <jto...@redhat.com>: > > On a Monday in 2025, Kirill Shchetiniuk via Devel wrote: >> From: Kirill Shchetiniuk <kshch...@redhat.com> >> >> Refactored the qemuDomainObjPrivateXMLParseVcpu function to use the >> appropriate virXMLPropUInt function to parse unsigned integers, >> avoiding unccessery string parsing operations. >> >> Signed-off-by: Kirill Shchetiniuk <kshch...@redhat.com> >> --- >> src/qemu/qemu_domain.c | 16 +++------------- >> 1 file changed, 3 insertions(+), 13 deletions(-) >> >> diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c >> index 2d62bcc62b..2b505fbddb 100644 >> --- a/src/qemu/qemu_domain.c >> +++ b/src/qemu/qemu_domain.c >> @@ -2811,28 +2811,18 @@ qemuDomainObjPrivateXMLParseVcpu(xmlNodePtr node, >> virDomainDef *def) >> { >> virDomainVcpuDef *vcpu; >> - g_autofree char *idstr = NULL; >> - g_autofree char *pidstr = NULL; >> unsigned int tmp; >> >> - idstr = virXMLPropString(node, "id"); >> - >> - if (idstr && >> - (virStrToLong_uip(idstr, NULL, 10, &idx) < 0)) { >> - virReportError(VIR_ERR_INTERNAL_ERROR, >> - _("cannot parse vcpu index '%1$s'"), idstr); >> + if (virXMLPropUInt(node, "id", 10, VIR_XML_PROP_REQUIRED, &idx) < 0) >> return -1; > > Before, the id attribute was not required. After your change it's > mandatory. > > A refactor should (ideally) not include any changes in behavior. > If it's safe to do such change, it should at least be mentioned in the > commit message. > > > I did not look into history whether it's safe to make it mandatory, > but in case the 'id' XML attribute is mandatory, it's pointless to > pass 'idx' as the function argument. > > Jano > >> - } >> + >> if (!(vcpu = virDomainDefGetVcpu(def, idx))) { >> virReportError(VIR_ERR_INTERNAL_ERROR, >> _("invalid vcpu index '%1$u'"), idx); >> return -1; >> } >> >> - if (!(pidstr = virXMLPropString(node, "pid"))) >> - return -1; >> - >> - if (virStrToLong_uip(pidstr, NULL, 10, &tmp) < 0) >> + if (virXMLPropUInt(node, "pid", 10, VIR_XML_PROP_REQUIRED, &tmp) < 0) >> return -1; >> >> QEMU_DOMAIN_VCPU_PRIVATE(vcpu)->tid = tmp; >> -- >> 2.49.0 >> > <signature.asc>
Hi Jano, oh yeah, I see now, I have incorrectly interpreted idstr NULL check as mandatory requirement for id, will fix it within next series, thanks! Kirill