backend: reset EGL surface after buffer swap
This prevents GL commands to affect a previously current EGL surface after a buffer swap.
This commit is contained in:
parent
6977f3a843
commit
d3bd5f2a7b
|
@ -569,6 +569,8 @@ static bool drm_connector_commit(struct wlr_output *output) {
|
|||
}
|
||||
}
|
||||
|
||||
wlr_egl_make_current(&drm->renderer.egl, EGL_NO_SURFACE, NULL);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
|
|
@ -71,6 +71,9 @@ static bool output_test(struct wlr_output *wlr_output) {
|
|||
}
|
||||
|
||||
static bool output_commit(struct wlr_output *wlr_output) {
|
||||
struct wlr_headless_output *output =
|
||||
headless_output_from_output(wlr_output);
|
||||
|
||||
if (!output_test(wlr_output)) {
|
||||
return false;
|
||||
}
|
||||
|
@ -89,6 +92,8 @@ static bool output_commit(struct wlr_output *wlr_output) {
|
|||
wlr_output_send_present(wlr_output, NULL);
|
||||
}
|
||||
|
||||
wlr_egl_make_current(&output->backend->egl, EGL_NO_SURFACE, NULL);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
|
|
@ -297,6 +297,8 @@ static bool output_commit(struct wlr_output *wlr_output) {
|
|||
}
|
||||
}
|
||||
|
||||
wlr_egl_make_current(&output->backend->egl, EGL_NO_SURFACE, NULL);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
|
|
@ -157,6 +157,8 @@ static bool output_commit(struct wlr_output *wlr_output) {
|
|||
wlr_output_send_present(wlr_output, NULL);
|
||||
}
|
||||
|
||||
wlr_egl_make_current(&x11->egl, EGL_NO_SURFACE, NULL);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue