This is needed to be consistent with other drivers. I used both the context and the buffer as a condition in order to ensure it's an intentional unbind, and not a programming error, but let me know if you think I should change it to check only the context.
Also, this is my very first mesa patch, so if this patch gets accepted I think someone should land it for me, since I have no access to the repo. Thanks! Signed-off-by: Emilio Cobos Álvarez <m...@emiliocobos.me> --- src/mesa/drivers/osmesa/osmesa.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/mesa/drivers/osmesa/osmesa.c b/src/mesa/drivers/osmesa/osmesa.c index 8462ab6..356ba71 100644 --- a/src/mesa/drivers/osmesa/osmesa.c +++ b/src/mesa/drivers/osmesa/osmesa.c @@ -966,6 +966,9 @@ OSMesaDestroyContext( OSMesaContext osmesa ) * If the context's viewport hasn't been initialized yet, it will now be * initialized to (0,0,width,height). * + * If both the context and the buffer are null, the current context will be + * unbound. + * * Input: osmesa - the rendering context * buffer - the image buffer memory * type - data type for pixel components @@ -983,6 +986,10 @@ GLAPI GLboolean GLAPIENTRY OSMesaMakeCurrent( OSMesaContext osmesa, void *buffer, GLenum type, GLsizei width, GLsizei height ) { + if (!osmesa && !buffer) { + return _mesa_make_current(NULL, NULL, NULL); + } + if (!osmesa || !buffer || width < 1 || height < 1 || width > SWRAST_MAX_WIDTH || height > SWRAST_MAX_HEIGHT) { -- 2.10.0 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev