diff options
author | Nicolas Boichat <[email protected]> | 2016-08-11 16:43:32 +0800 |
---|---|---|
committer | Michel Dänzer <[email protected]> | 2016-08-16 17:30:35 +0900 |
commit | 78e3cea4197802253401766fc44362786898e024 (patch) | |
tree | 0502f527e137747b4dad52cdf3f2249fdcf8fd3e /src/gallium/auxiliary/util/u_surface.c | |
parent | 09dff7ae2e179d5a3490481762c6bd3d50430c9f (diff) |
egl/dri2: dri2_make_current: Release previous context's display
eglMakeCurrent can also be used to change the active display. In that
case, we need to decrement ref_count of the previous display (possibly
destroying it), and increment it on the next display.
Also, old_dsurf/old_rsurf cannot be non-NULL if old_ctx is NULL, so
we only need to test if old_ctx is non-NULL.
v2: Save the old display before destroying the context.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=97214
Fixes: 9ee683f877 (egl/dri2: Add reference count for dri2_egl_display)
Cc: "12.0" <[email protected]>
Reported-by: Alexandr Zelinsky <[email protected]>
Tested-by: Alexandr Zelinsky <[email protected]>
Reviewed-and-Tested-by: Michel Dänzer <[email protected]>
Signed-off-by: Nicolas Boichat <[email protected]>
Diffstat (limited to 'src/gallium/auxiliary/util/u_surface.c')
0 files changed, 0 insertions, 0 deletions