Module: Mesa Branch: master Commit: 97de7e658664865f042b1729f3f959ee0fb7b6a4 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=97de7e658664865f042b1729f3f959ee0fb7b6a4
Author: Philipp Zabel <[email protected]> Date: Thu Jan 19 15:05:41 2017 +0100 st/mesa: ask pipe driver to recreate derived internal resources when (re-)binding external textures Use the resource_changed callback to invalidate internal resources derived from external textures when they are (re-)bound. This is needed to comply with the requirement from the GL_OES_EGL_image_external extension that a call to glBindTexture guarantees that all further sampling will return values that correspond to the values in the external texture at or after the time that glBindTexture was called. Signed-off-by: Philipp Zabel <[email protected]> Reviewed-by: Marek Olšák <[email protected]> Signed-off-by: Lucas Stach <[email protected]> --- src/mesa/state_tracker/st_atom_texture.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/mesa/state_tracker/st_atom_texture.c b/src/mesa/state_tracker/st_atom_texture.c index 76e512f..92023e0 100644 --- a/src/mesa/state_tracker/st_atom_texture.c +++ b/src/mesa/state_tracker/st_atom_texture.c @@ -91,6 +91,10 @@ update_single_texture(struct st_context *st, stObj->prev_sRGBDecode = samp->sRGBDecode; } + if (texObj->TargetIndex == TEXTURE_EXTERNAL_INDEX && + stObj->pt->screen->resource_changed) + stObj->pt->screen->resource_changed(stObj->pt->screen, stObj->pt); + *sampler_view = st_get_texture_sampler_view_from_stobj(st, stObj, samp, glsl_version); return GL_TRUE; _______________________________________________ mesa-commit mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-commit
