etnaviv: Fix memory leak on error path.

Fix warning reported by Coverity Scan.

Resource leak (RESOURCE_LEAK)
leaked_storage: Variable pq going out of scope leaks the storage it
points to.

Suggested-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Fixes: eed5a00989 ("etnaviv: convert perfmon queries to acc queries")
Signed-off-by: Vinson Lee <vlee@freedesktop.org>
Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5220>
This commit is contained in:
Vinson Lee 2020-05-26 15:54:06 -07:00 committed by Marge Bot
parent bccb3deee2
commit f047d585ee
1 changed files with 5 additions and 4 deletions

View File

@ -101,12 +101,9 @@ perfmon_supports(unsigned query_type)
static struct etna_acc_query *
perfmon_allocate(struct etna_context *ctx, unsigned query_type)
{
struct etna_pm_query *pq = CALLOC_STRUCT(etna_pm_query);
struct etna_pm_query *pq;
const struct etna_perfmon_config *cfg;
if (!pq)
return NULL;
cfg = etna_pm_query_config(query_type);
if (!cfg)
return false;
@ -114,6 +111,10 @@ perfmon_allocate(struct etna_context *ctx, unsigned query_type)
if (!etna_pm_cfg_supported(ctx->screen->perfmon, cfg))
return false;
pq = CALLOC_STRUCT(etna_pm_query);
if (!pq)
return NULL;
pm_add_signal(pq, ctx->screen->perfmon, cfg);
return &pq->base;