[Mesa-dev] [PATCH] main: create_buffers unlocks mutex when throwing OUT_OF_MEMORY.
Laura Ekstrand
laura at jlekstrand.net
Wed Apr 1 12:02:47 PDT 2015
Hmm, I don't trust myself with gotos yet because I still don't have much
experience writing them. So maybe I'll use them for a different patch
later.
On Wed, Apr 1, 2015 at 11:56 AM, Ilia Mirkin <imirkin at alum.mit.edu> wrote:
> Reviewed-by: Ilia Mirkin <imirkin at alum.mit.edu>
>
> An alternative, btw, is to do a goto to the existing unlock. This
> would have the advantage of keeping a single unlock, and a single
> return path in the function. Your call, you get the R-b either way.
>
> -ilia
>
> On Wed, Apr 1, 2015 at 2:23 PM, Laura Ekstrand <laura at jlekstrand.net>
> wrote:
> > Ilia Mirkin found that I had forgotten to free the mutex in the error
> case.
> > ---
> > src/mesa/main/bufferobj.c | 1 +
> > 1 file changed, 1 insertion(+)
> >
> > diff --git a/src/mesa/main/bufferobj.c b/src/mesa/main/bufferobj.c
> > index b67e1c4..c7ef90b 100644
> > --- a/src/mesa/main/bufferobj.c
> > +++ b/src/mesa/main/bufferobj.c
> > @@ -1353,6 +1353,7 @@ create_buffers(GLsizei n, GLuint *buffers, bool
> dsa)
> > buf = ctx->Driver.NewBufferObject(ctx, buffers[i]);
> > if (!buf) {
> > _mesa_error(ctx, GL_OUT_OF_MEMORY, "%s", func);
> > + mtx_unlock(&ctx->Shared->Mutex);
> > return;
> > }
> > }
> > --
> > 2.1.0
> >
> > _______________________________________________
> > mesa-dev mailing list
> > mesa-dev at lists.freedesktop.org
> > http://lists.freedesktop.org/mailman/listinfo/mesa-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/mesa-dev/attachments/20150401/6abcbd75/attachment.html>
More information about the mesa-dev
mailing list