]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
qemu: Check return value of virJSONValueObjectAdd
authorJiri Denemark <jdenemar@redhat.com>
Thu, 4 Nov 2021 17:21:35 +0000 (18:21 +0100)
committerJiri Denemark <jdenemar@redhat.com>
Fri, 5 Nov 2021 08:25:55 +0000 (09:25 +0100)
The return value was not properly checked in the code for input type
evdev.

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
src/qemu/qemu_command.c

index 45278c710844462d69a9dd3f6ecf1ee7bd8466e4..483041f584d80a0878f76f8e2965d2630020ad3a 100644 (file)
@@ -4336,13 +4336,15 @@ qemuBuildInputEvdevProps(virDomainInputDef *dev)
                                      NULL) < 0)
         return NULL;
 
-    if (dev->source.grab == VIR_DOMAIN_INPUT_SOURCE_GRAB_ALL)
-        virJSONValueObjectAdd(props, "b:grab_all", true, NULL);
+    if (dev->source.grab == VIR_DOMAIN_INPUT_SOURCE_GRAB_ALL &&
+        virJSONValueObjectAdd(props, "b:grab_all", true, NULL) < 0)
+        return NULL;
 
-    if (dev->source.grabToggle != VIR_DOMAIN_INPUT_SOURCE_GRAB_TOGGLE_DEFAULT)
+    if (dev->source.grabToggle != VIR_DOMAIN_INPUT_SOURCE_GRAB_TOGGLE_DEFAULT &&
         virJSONValueObjectAdd(props, "s:grab-toggle",
                               virDomainInputSourceGrabToggleTypeToString(dev->source.grabToggle),
-                              NULL);
+                              NULL) < 0)
+        return NULL;
 
     return g_steal_pointer(&props);
 }