diff --git a/clients/window.c b/clients/window.c index 24ec5b0e..2dd71358 100644 --- a/clients/window.c +++ b/clients/window.c @@ -275,9 +275,8 @@ display_create_drm_surface_from_file(struct display *display, } surface = display_create_drm_surface(display, rect); - glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, - rect->width, rect->height, - 0, GL_RGBA, GL_UNSIGNED_BYTE, pixels); + glTexSubImage2D(GL_TEXTURE_2D, 0, 0, 0, rect->width, rect->height, + GL_RGBA, GL_UNSIGNED_BYTE, pixels); gdk_pixbuf_unref(pixbuf); diff --git a/compositor/compositor.c b/compositor/compositor.c index 7daacea9..94e70a56 100644 --- a/compositor/compositor.c +++ b/compositor/compositor.c @@ -192,8 +192,8 @@ texture_from_png(const char *filename, int width, int height) else format = GL_RGB; - glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, - width, height, 0, format, GL_UNSIGNED_BYTE, data); + glTexSubImage2D(GL_TEXTURE_2D, 0, 0, 0, width, height, + format, GL_UNSIGNED_BYTE, data); gdk_pixbuf_unref(pixbuf);