diff options
Diffstat (limited to 'gsk/gl/gskgldriver.c')
-rw-r--r-- | gsk/gl/gskgldriver.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/gsk/gl/gskgldriver.c b/gsk/gl/gskgldriver.c index f0b03ebcc8..672f44a5ee 100644 --- a/gsk/gl/gskgldriver.c +++ b/gsk/gl/gskgldriver.c @@ -744,12 +744,13 @@ gsk_gl_driver_load_texture (GskGLDriver *self, return t->texture_id; } - if (GDK_IS_GL_TEXTURE (texture) && !ensure_mipmap) + if (GDK_IS_GL_TEXTURE (texture)) { GdkGLTexture *gl_texture = (GdkGLTexture *) texture; GdkGLContext *texture_context = gdk_gl_texture_get_context (gl_texture); - if (gdk_gl_context_is_shared (context, texture_context)) + if (gdk_gl_context_is_shared (context, texture_context) && + (!ensure_mipmap || gdk_gl_texture_has_mipmap (gl_texture))) { /* A GL texture from the same GL context is a simple task... */ return gdk_gl_texture_get_id (gl_texture); |