pmqos: update scenarios->num properly from pmqos_parse_scenario()
authorSeung-Woo Kim <sw0312.kim@samsung.com>
Mon, 30 Oct 2017 10:27:26 +0000 (19:27 +0900)
committerChanwoo Choi <cw00.choi@samsung.com>
Mon, 20 Nov 2017 00:52:33 +0000 (09:52 +0900)
If allocation of scenarios->list is failed, only scenarios->num is
updated. Update the scenarios->num propery.

Change-Id: Ia9b6c47f8449870ddefaca600ed5d0c1d9c47fe7
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
src/pmqos/pmqos-parser.c

index b849540e1e9b7829f077aca9572a67496b8923f7..6d6b83c98abbd26a82a7b5834e1ab6ff3323e251 100644 (file)
@@ -57,15 +57,15 @@ static int pmqos_parse_scenario(struct parse_result *result, void *user_data, un
                        if (num > MAX_NUM_OF_SCENARIOS)
                                return -EINVAL;
 
-                       scenarios->num = num;
-
-                       if (scenarios->num > 0) {
-                               scenarios->list = calloc(scenarios->num,
+                       if (num > 0) {
+                               scenarios->list = calloc(num,
                                                sizeof(struct scenario));
                                if (!scenarios->list) {
                                        _E("failed to allocat memory for scenario");
                                        return -errno;
                                }
+
+                               scenarios->num = num;
                        }
                } else if (MATCH(result->name, "scenario_max_timeout_ms")) {
                        int max_timeout_ms = atoi(result->value);