From 6e3da9c81c2112e72829ed45ac34c0916de71a47 Mon Sep 17 00:00:00 2001 From: Christian Gmeiner Date: Wed, 8 Feb 2017 13:07:25 +0100 Subject: etnaviv: move pctx initialisation to avoid a null dereference In case ctx->stream == NULL the fail label gets executed where pctx gets dereferenced - too bad pctx is NULL in that case. Caught by Coverity, reported to me by imirkin. Cc: "17.0" Signed-off-by: Christian Gmeiner Reviewed-by: Eric Engestrom (cherry picked from commit a0b16a08905d68da07668a42eeb464b4f30bf3e5) --- src/gallium/drivers/etnaviv/etnaviv_context.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/gallium/drivers/etnaviv/etnaviv_context.c b/src/gallium/drivers/etnaviv/etnaviv_context.c index d767cd1f38e..88580c1449a 100644 --- a/src/gallium/drivers/etnaviv/etnaviv_context.c +++ b/src/gallium/drivers/etnaviv/etnaviv_context.c @@ -251,20 +251,20 @@ etna_context_create(struct pipe_screen *pscreen, void *priv, unsigned flags) { struct etna_context *ctx = CALLOC_STRUCT(etna_context); struct etna_screen *screen; - struct pipe_context *pctx = NULL; + struct pipe_context *pctx; if (ctx == NULL) return NULL; + pctx = &ctx->base; + pctx->priv = ctx; + pctx->screen = pscreen; + screen = etna_screen(pscreen); ctx->stream = etna_cmd_stream_new(screen->pipe, 0x2000, &etna_cmd_stream_reset_notify, ctx); if (ctx->stream == NULL) goto fail; - pctx = &ctx->base; - pctx->priv = ctx; - pctx->screen = pscreen; - /* context ctxate setup */ ctx->specs = screen->specs; ctx->screen = screen; -- cgit v1.2.3