Module: Mesa Branch: master Commit: feb71117aebc0932a96b548b4c402b010a008b2d URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=feb71117aebc0932a96b548b4c402b010a008b2d
Author: George Kyriazis <george.kyria...@intel.com> Date: Fri Mar 4 12:26:00 2016 -0700 st/xlib: Don't destroy screen on XCloseDisplay() screen may still be used by other resources that are not yet freed. To correctly fix this there will be a need to account for resources differently, but this quick fix is not any worse than the original code that leaked screens anyway. Reviewed-by: Brian Paul <bri...@vmware.com> --- src/gallium/state_trackers/glx/xlib/xm_api.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/gallium/state_trackers/glx/xlib/xm_api.c b/src/gallium/state_trackers/glx/xlib/xm_api.c index cee4f18..5799cce 100644 --- a/src/gallium/state_trackers/glx/xlib/xm_api.c +++ b/src/gallium/state_trackers/glx/xlib/xm_api.c @@ -174,9 +174,13 @@ xmesa_close_display(Display *display) /* don't forget to clean up mesaDisplay */ XMesaDisplay xmdpy = &info->mesaDisplay; - if (xmdpy->screen) { - xmdpy->screen->destroy(xmdpy->screen); - } + /** + * XXX: Don't destroy the screens here, since there may still + * be some dangling screen pointers that are used after this point + * if (xmdpy->screen) { + * xmdpy->screen->destroy(xmdpy->screen); + * } + */ free(xmdpy->smapi); XFree((char *) info); _______________________________________________ mesa-commit mailing list mesa-commit@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-commit