[Mesa-dev] [PATCH 2/2] mesa: return GL_OUT_OF_MEMORY if NewSamplerObject fails
Timothy Arceri
tarceri at itsqueeze.com
Mon Jul 24 01:26:45 UTC 2017
please see the comment in patch 1. Otherwise 1-2 are:
Reviewed-by: Timothy Arceri <tarceri at itsqueeze.com>
On 21/07/17 22:42, Samuel Pitoiset wrote:
> This is similar to other functions that create objects.
>
> Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
> ---
> src/mesa/main/samplerobj.c | 16 ++++++++++++----
> 1 file changed, 12 insertions(+), 4 deletions(-)
>
> diff --git a/src/mesa/main/samplerobj.c b/src/mesa/main/samplerobj.c
> index a9c004fe71..7744ab2726 100644
> --- a/src/mesa/main/samplerobj.c
> +++ b/src/mesa/main/samplerobj.c
> @@ -169,10 +169,18 @@ create_samplers(struct gl_context *ctx, GLsizei count, GLuint *samplers,
>
> /* Insert the ID and pointer to new sampler object into hash table */
> for (i = 0; i < count; i++) {
> - struct gl_sampler_object *sampObj =
> - ctx->Driver.NewSamplerObject(ctx, first + i);
> - _mesa_HashInsertLocked(ctx->Shared->SamplerObjects, first + i, sampObj);
> - samplers[i] = first + i;
> + struct gl_sampler_object *sampObj;
> + GLuint name = first + i;
> +
> + sampObj = ctx->Driver.NewSamplerObject(ctx, name);
> + if (!sampObj) {
> + _mesa_HashUnlockMutex(ctx->Shared->SamplerObjects);
> + _mesa_error(ctx, GL_OUT_OF_MEMORY, "%s", caller);
> + return;
> + }
> +
> + _mesa_HashInsertLocked(ctx->Shared->SamplerObjects, name, sampObj);
> + samplers[i] = name;
> }
>
> _mesa_HashUnlockMutex(ctx->Shared->SamplerObjects);
>
More information about the mesa-dev
mailing list