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:
parent
bccb3deee2
commit
f047d585ee
|
@ -101,12 +101,9 @@ perfmon_supports(unsigned query_type)
|
||||||
static struct etna_acc_query *
|
static struct etna_acc_query *
|
||||||
perfmon_allocate(struct etna_context *ctx, unsigned query_type)
|
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;
|
const struct etna_perfmon_config *cfg;
|
||||||
|
|
||||||
if (!pq)
|
|
||||||
return NULL;
|
|
||||||
|
|
||||||
cfg = etna_pm_query_config(query_type);
|
cfg = etna_pm_query_config(query_type);
|
||||||
if (!cfg)
|
if (!cfg)
|
||||||
return false;
|
return false;
|
||||||
|
@ -114,6 +111,10 @@ perfmon_allocate(struct etna_context *ctx, unsigned query_type)
|
||||||
if (!etna_pm_cfg_supported(ctx->screen->perfmon, cfg))
|
if (!etna_pm_cfg_supported(ctx->screen->perfmon, cfg))
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
|
pq = CALLOC_STRUCT(etna_pm_query);
|
||||||
|
if (!pq)
|
||||||
|
return NULL;
|
||||||
|
|
||||||
pm_add_signal(pq, ctx->screen->perfmon, cfg);
|
pm_add_signal(pq, ctx->screen->perfmon, cfg);
|
||||||
|
|
||||||
return &pq->base;
|
return &pq->base;
|
||||||
|
|
Loading…
Reference in New Issue