[PATCH 02/17] virXMLPropULongLong: Always initialize @result

Peter Krempa pkrempa at redhat.com
Thu May 6 15:30:54 UTC 2021


Compilers aren't able to see whether @result is set or not and thus
don't warn of a potential use of uninitialized value. Always set @result
to prevent uninitialized use.

Signed-off-by: Peter Krempa <pkrempa at redhat.com>
---
 src/util/virxml.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/util/virxml.c b/src/util/virxml.c
index 9929064993..707a6a2235 100644
--- a/src/util/virxml.c
+++ b/src/util/virxml.c
@@ -762,6 +762,7 @@ virXMLPropUInt(xmlNodePtr node,
  * @result: The returned value
  *
  * Convenience function to return value of an unsigned long long attribute.
+ * @result is initialized to 0 on error or if the element is not found.
  *
  * Returns 1 in case of success in which case @result is set,
  *         or 0 if the attribute is not present,
@@ -778,6 +779,8 @@ virXMLPropULongLong(xmlNodePtr node,
     int ret;
     unsigned long long val;

+    *result = 0;
+
     if (!(tmp = virXMLPropString(node, name))) {
         if (!(flags & VIR_XML_PROP_REQUIRED))
             return 0;
-- 
2.30.2




More information about the libvir-list mailing list