X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=src%2Fmesa%2Fmain%2Fsyncobj.c;fp=src%2Fmesa%2Fmain%2Fsyncobj.c;h=915b7009f78ac6d1f270541ca303485c5d7a6167;hb=c6f81a1df833c2adf1cec735a197fe54d21d435a;hp=cb6f8868bd29c9391697ce21cdc7ea946b9eb678;hpb=2a4d5dce74ab7138a8e124a28a9eac69a9d96e5d;p=mesa.git diff --git a/src/mesa/main/syncobj.c b/src/mesa/main/syncobj.c index cb6f8868bd2..915b7009f78 100644 --- a/src/mesa/main/syncobj.c +++ b/src/mesa/main/syncobj.c @@ -381,6 +381,15 @@ _mesa_ClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout) } +static void +wait_sync(struct gl_context *ctx, struct gl_sync_object *syncObj, + GLbitfield flags, GLuint64 timeout) +{ + ctx->Driver.ServerWaitSync(ctx, syncObj, flags, timeout); + _mesa_unref_sync_object(ctx, syncObj, 1); +} + + void GLAPIENTRY _mesa_WaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout) { @@ -404,8 +413,7 @@ _mesa_WaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout) return; } - ctx->Driver.ServerWaitSync(ctx, syncObj, flags, timeout); - _mesa_unref_sync_object(ctx, syncObj, 1); + wait_sync(ctx, syncObj, flags, timeout); }