perf list: Use zfree() to reduce chances of use after free

Do defensive programming by using zfree() to initialize freed pointers
to NULL, so that eventual use after free result in a NULL pointer deref
instead of more subtle behaviour.
Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
parent 190de754
...@@ -127,7 +127,7 @@ static void default_print_event(void *ps, const char *pmu_name, const char *topi ...@@ -127,7 +127,7 @@ static void default_print_event(void *ps, const char *pmu_name, const char *topi
if (strcmp(print_state->last_topic, topic ?: "")) { if (strcmp(print_state->last_topic, topic ?: "")) {
if (topic) if (topic)
printf("\n%s:\n", topic); printf("\n%s:\n", topic);
free(print_state->last_topic); zfree(&print_state->last_topic);
print_state->last_topic = strdup(topic ?: ""); print_state->last_topic = strdup(topic ?: "");
} }
...@@ -197,7 +197,7 @@ static void default_print_metric(void *ps, ...@@ -197,7 +197,7 @@ static void default_print_metric(void *ps,
else else
printf("%s\n", group); printf("%s\n", group);
} }
free(print_state->last_metricgroups); zfree(&print_state->last_metricgroups);
print_state->last_metricgroups = strdup(group ?: ""); print_state->last_metricgroups = strdup(group ?: "");
} }
if (!print_state->metrics) if (!print_state->metrics)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment