layer_get_property: add validation of a property id 46/164646/2
authorRoman Marchenko <r.marchenko@samsung.com>
Wed, 20 Dec 2017 06:39:42 +0000 (08:39 +0200)
committerRoman Marchenko <r.marchenko@samsung.com>
Wed, 20 Dec 2017 07:22:43 +0000 (07:22 +0000)
Change-Id: I93158765c88ab35509a5985c836b27b585b67b3f
Signed-off-by: Roman Marchenko <r.marchenko@samsung.com>
src/tdm_exynos_layer.c

index 09e591c87d80555bd7156dd608b64f7287d6cfb1..d3aa065e7e88e7cc468610b6c55a6a2277017f2d 100644 (file)
@@ -164,6 +164,7 @@ exynos_layer_get_property(tdm_layer *layer, unsigned int id, tdm_value *value)
        tdm_exynos_layer_data *layer_data = layer;
        tdm_exynos_data *exynos_data;
        drmModeObjectPropertiesPtr props;
+       tdm_error ret = TDM_ERROR_INVALID_PARAMETER;
        int i;
 
        RETURN_VAL_IF_FAIL(layer_data, TDM_ERROR_INVALID_PARAMETER);
@@ -181,12 +182,16 @@ exynos_layer_get_property(tdm_layer *layer, unsigned int id, tdm_value *value)
        for (i = 0; i < props->count_props; i++)
                if (props->props[i] == id) {
                        (*value).u32 = (uint)props->prop_values[i];
+                       ret = TDM_ERROR_NONE;
                        break;
                }
 
        drmModeFreeObjectProperties(props);
 
-       return TDM_ERROR_NONE;
+       if (ret != TDM_ERROR_NONE)
+               TDM_ERR("unknown property id: %ud", id);
+
+       return ret;
 }
 
 tdm_error