Hi, I am not sure that "Tizen 3.0" is a valid test plan for our purposes. If a fix is submitted upstream, I think it makes sense to also submit a corresponding test to verify that the issue is solved and does not recur in the future.
Thoughts? On Mon, Jan 2, 2017 at 2:44 AM Minkyoung Kim <[email protected]> wrote: > jpeg pushed a commit to branch master. > > > http://git.enlightenment.org/core/efl.git/commit/?id=40e9da0101e2c9afb6f823c7b21c02a011cc5300 > > commit 40e9da0101e2c9afb6f823c7b21c02a011cc5300 > Author: Minkyoung Kim <[email protected]> > Date: Mon Jan 2 15:29:48 2017 +0900 > > Evas GL:Bind texture to correct one. > > Summary: > If user bind textureA and want to use it continuously, do not call > glBindTexture(textureA) again. > But expect that textureA will be binding. > So EvasGL sould not change binded texture silently. > Restore texture to previous bound one after allocating new texture. > And when destroy texture, reset texture to 0 if it is current bound > texture. > > Test Plan: Tizen 3.0 > > Reviewers: wonsik, dkdk, cedric, jpeg > > Reviewed By: jpeg > > Differential Revision: https://phab.enlightenment.org/D4524 > --- > src/modules/evas/engines/gl_common/evas_gl_core.c | 9 ++++++++- > 1 file changed, 8 insertions(+), 1 deletion(-) > > diff --git a/src/modules/evas/engines/gl_common/evas_gl_core.c > b/src/modules/evas/engines/gl_common/evas_gl_core.c > index 14d17f6..8292b5c 100644 > --- a/src/modules/evas/engines/gl_common/evas_gl_core.c > +++ b/src/modules/evas/engines/gl_common/evas_gl_core.c > @@ -234,19 +234,26 @@ _texture_allocate_2d(GLuint tex, GLint ifmt, GLenum > fmt, GLenum type, int w, int > { > //if (!(*tex)) > // glGenTextures(1, tex); > + GLint curr_tex = 0; > + glGetIntegerv(GL_TEXTURE_BINDING_2D, &curr_tex); > + > glBindTexture(GL_TEXTURE_2D, tex); > glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE); > glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE); > glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST); > glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST); > glTexImage2D(GL_TEXTURE_2D, 0, ifmt, w, h, 0, fmt, type, NULL); > - glBindTexture(GL_TEXTURE_2D, 0); > + glBindTexture(GL_TEXTURE_2D, (GLuint)curr_tex); > } > > // Destroy Texture > static void > _texture_destroy(GLuint *tex) > { > + GLint curr_tex = 0; > + glGetIntegerv(GL_TEXTURE_BINDING_2D, &curr_tex); > + > + if ((GLuint)curr_tex == *tex) glBindTexture(GL_TEXTURE_2D, 0); > if (*tex) > { > glDeleteTextures(1, tex); > > -- > > > ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, SlashDot.org! http://sdm.link/slashdot _______________________________________________ enlightenment-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
