[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] [PATCH] xen-detect: handle asprintf error



Otherwise gcc with -Wunused will complain the return value is not
used.

Reported-by: Olaf Hering <olaf@xxxxxxxxx>
Signed-off-by: Wei Liu <wei.liu2@xxxxxxxxxx>
---
Cc: Ian Jackson <ian.jackson@xxxxxxxxxxxxx>
Cc: Olaf Hering <olaf@xxxxxxxxx>
Cc: Juergen Gross <jgross@xxxxxxxx>
---
 tools/misc/xen-detect.c | 21 +++++++++++++++++----
 1 file changed, 17 insertions(+), 4 deletions(-)

diff --git a/tools/misc/xen-detect.c b/tools/misc/xen-detect.c
index a62747d316..fd187a4be6 100644
--- a/tools/misc/xen-detect.c
+++ b/tools/misc/xen-detect.c
@@ -90,8 +90,15 @@ static int check_for_xen(int pv_context)
  found:
     cpuid(base + 1, regs, pv_context);
     if ( regs[0] )
-        asprintf(&ver, "V%u.%u",
-                 (uint16_t)(regs[0] >> 16), (uint16_t)regs[0]);
+    {
+        int r = asprintf(&ver, "V%u.%u", (uint16_t)(regs[0] >> 16),
+                         (uint16_t)regs[0]);
+        if ( r < 0 )
+        {
+            perror("asprintf failed\n");
+            exit(EXIT_FAILURE);
+        }
+    }
     return regs[0];
 }
 
@@ -193,8 +200,14 @@ static enum guest_type check_sysfs(void)
     if ( tmp )
         tmp[strlen(tmp) - 1] = 0;
     if ( str && tmp )
-        asprintf(&ver, "V%s.%s", str, tmp);
-    else
+    {
+        int r = asprintf(&ver, "V%s.%s", str, tmp);
+        if ( r < 0 )
+        {
+            perror("asprintf failed\n");
+            exit(EXIT_FAILURE);
+        }
+    } else
         ver = strdup("unknown version");
     free(tmp);
 
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
https://lists.xen.org/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.