devilhorns pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=732e622a8205f2d21032d1c74417331309fc5bab

commit 732e622a8205f2d21032d1c74417331309fc5bab
Author: Christopher Michael <devilho...@comcast.net>
Date:   Thu Feb 25 09:23:23 2021 -0500

    eina_value: Fix unchecked return value
    
    Small patch to check return value of eina_value_type_setup reported by
    Coverity
    
    Fixes CID1401023
---
 src/lib/eina/eina_value.c | 24 ++++++++++++------------
 1 file changed, 12 insertions(+), 12 deletions(-)

diff --git a/src/lib/eina/eina_value.c b/src/lib/eina/eina_value.c
index 3cf4c06ab2..4045124775 100644
--- a/src/lib/eina/eina_value.c
+++ b/src/lib/eina/eina_value.c
@@ -4614,27 +4614,27 @@ eina_value_optional_pset(Eina_Value *value,
 {
    eina_value_optional_reset(value);
 
-   if(sizeof(Eina_Value_Optional_Outer) <= sizeof(Eina_Value_Union))
+   if (sizeof(Eina_Value_Optional_Outer) <= sizeof(Eina_Value_Union))
      {
-       Eina_Value_Optional_Outer outer;
-       outer.subtype = subtype;
-       outer.value = malloc(subtype->value_size);
-       eina_value_type_setup(subtype, outer.value);
-       eina_value_type_pset(subtype, outer.value, subvalue);
-       if (!eina_value_pset(value, &outer))
-         {
-           return EINA_FALSE;
-         }
+        Eina_Value_Optional_Outer outer;
+        outer.subtype = subtype;
+        outer.value = malloc(subtype->value_size);
+        if (!eina_value_type_setup(subtype, outer.value))
+          return EINA_FALSE;
+        eina_value_type_pset(subtype, outer.value, subvalue);
+        if (!eina_value_pset(value, &outer))
+          return EINA_FALSE;
      }
    else
      {
         Eina_Value_Optional_Inner *inner =
           malloc(sizeof(Eina_Value_Optional_Inner) + subtype->value_size);
         inner->subtype = subtype;
-        eina_value_type_setup(subtype, inner->value);
+        if (!eina_value_type_setup(subtype, inner->value))
+          return EINA_FALSE;
         eina_value_type_pset(subtype, inner->value, subvalue);
         if (!eina_value_pset(value, &inner))
-             return EINA_FALSE;
+          return EINA_FALSE;
      }
 
    return EINA_TRUE;

-- 


Reply via email to