fix prop's index 85/172685/1
authorBoram Park <boram1288.park@samsung.com>
Thu, 15 Mar 2018 05:19:47 +0000 (14:19 +0900)
committerBoram Park <boram1288.park@samsung.com>
Thu, 15 Mar 2018 07:30:11 +0000 (16:30 +0900)
Change-Id: Ief9a591ea6136d3b31b9b4ea9afb0f02b34781cc

src/tdm_exynos_layer.c
src/tdm_exynos_output.c

index 14c39d97ee605fc2e030afa8a46bcbd8f825b0df..5eb7a71d0b633e9c5fd710352bd833b4b8b6eaeb 100644 (file)
@@ -146,8 +146,8 @@ exynos_layer_get_capability(tdm_layer *layer, tdm_caps_layer *caps)
                        drmModeFreeProperty(prop);
                        continue;
                }
-               snprintf(caps->props[i].name, TDM_NAME_LEN, "%s", prop->name);
-               caps->props[i].id = props->props[i];
+               snprintf(caps->props[caps->prop_count].name, TDM_NAME_LEN, "%s", prop->name);
+               caps->props[caps->prop_count].id = props->props[i];
                caps->prop_count++;
                drmModeFreeProperty(prop);
        }
@@ -474,8 +474,8 @@ exynos_layer_get_available_properties(tdm_layer *layer, const tdm_prop **out_pro
                        drmModeFreeProperty(prop);
                        continue;
                }
-               snprintf(tdm_props[i].name, TDM_NAME_LEN, "%s", prop->name);
-               tdm_props[i].id = props->props[i];
+               snprintf(tdm_props[prop_count].name, TDM_NAME_LEN, "%s", prop->name);
+               tdm_props[prop_count].id = props->props[i];
                prop_count++;
                drmModeFreeProperty(prop);
        }
index b2ed70cd31c9f1bf1ab280533e0d899534692bb4..db409bcedfbc8a1f8ebee98bc5591cccfb40500c 100644 (file)
@@ -705,21 +705,22 @@ exynos_output_get_capability(tdm_output *output, tdm_caps_output *caps)
                goto failed_get;
        }
 
-       caps->prop_count = props->count_props;
-       caps->props = calloc(1, sizeof(tdm_prop) * caps->prop_count);
+       caps->props = calloc(1, sizeof(tdm_prop) * props->count_props);
        if (!caps->props) {
                ret = TDM_ERROR_OUT_OF_MEMORY;
                TDM_ERR("alloc failed\n");
                goto failed_get;
        }
 
-       for (i = 0; i < caps->prop_count; i++) {
+       caps->prop_count = 0;
+       for (i = 0; i < props->count_props; i++) {
                drmModePropertyPtr prop = drmModeGetProperty(exynos_data->drm_fd,
                                                                                                         props->props[i]);
                if (!prop)
                        continue;
-               snprintf(caps->props[i].name, TDM_NAME_LEN, "%s", prop->name);
-               caps->props[i].id = props->props[i];
+               snprintf(caps->props[caps->prop_count].name, TDM_NAME_LEN, "%s", prop->name);
+               caps->props[caps->prop_count].id = props->props[i];
+               caps->prop_count++;
                drmModeFreeProperty(prop);
        }