summaryrefslogtreecommitdiffstats
path: root/compton.h
diff options
context:
space:
mode:
Diffstat (limited to 'compton.h')
-rw-r--r--compton.h8
1 files changed, 5 insertions, 3 deletions
diff --git a/compton.h b/compton.h
index 49ffcb88f..9c4bd0a9f 100644
--- a/compton.h
+++ b/compton.h
@@ -169,7 +169,7 @@ paint_isvalid(session_t *ps, const paint_t *ppaint) {
return false;
#ifdef CONFIG_VSYNC_OPENGL
- if (BKEND_GLX == ps->o.backend && !glx_tex_binded(ppaint->ptex))
+ if (BKEND_GLX == ps->o.backend && !glx_tex_binded(ppaint->ptex, None))
return false;
#endif
@@ -179,10 +179,12 @@ paint_isvalid(session_t *ps, const paint_t *ppaint) {
* Bind texture in paint_t if we are using GLX backend.
*/
static inline bool
-paint_bind_tex(session_t *ps, paint_t *ppaint, int wid, int hei, int depth) {
+paint_bind_tex(session_t *ps, paint_t *ppaint, int wid, int hei, int depth,
+ bool force) {
#ifdef CONFIG_VSYNC_OPENGL
// TODO: Make sure we have the same Pixmap binded?
- if (BKEND_GLX == ps->o.backend && !glx_tex_binded(ppaint->ptex)) {
+ if (BKEND_GLX == ps->o.backend
+ && (force || !glx_tex_binded(ppaint->ptex, ppaint->pixmap))) {
return glx_bind_pixmap(ps, &ppaint->ptex, ppaint->pixmap, wid, hei, depth);
}
#endif