diff options
author | Louis-Francis Ratté-Boulianne <[email protected]> | 2017-10-06 01:26:51 -0400 |
---|---|---|
committer | Daniel Stone <[email protected]> | 2018-03-09 17:47:14 +0000 |
commit | 3160cb86aa9234ff78e11fe7a00f30bfb5cb8445 (patch) | |
tree | 0fd309687b78213936bc5a5cd81efd021e25d162 /src/glx/dri3_glx.c | |
parent | 069fdd5f9facbd72fb6a289696c7b74e3237e70f (diff) |
egl/x11: Re-allocate buffers if format is suboptimal
If PresentCompleteNotify event says the pixmap was presented
with mode PresentCompleteModeSuboptimalCopy, it means the pixmap
could possibly have been flipped instead if allocated with a
different format/modifier.
Signed-off-by: Louis-Francis Ratté-Boulianne <[email protected]>
Reviewed-by: Daniel Stone <[email protected]>
Diffstat (limited to 'src/glx/dri3_glx.c')
-rw-r--r-- | src/glx/dri3_glx.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/glx/dri3_glx.c b/src/glx/dri3_glx.c index 71ecebbc16c..aec803adfd8 100644 --- a/src/glx/dri3_glx.c +++ b/src/glx/dri3_glx.c @@ -372,7 +372,9 @@ dri3_create_drawable(struct glx_screen *base, XID xDrawable, pdraw->base.psc = &psc->base; if ((psc->image && psc->image->base.version >= 15) && - (pdp->dri3Major > 1 || (pdp->dri3Major == 1 && pdp->dri3Minor >= 2))) + (pdp->dri3Major > 1 || (pdp->dri3Major == 1 && pdp->dri3Minor >= 2)) && + (pdp->presentMajor > 1 || + (pdp->presentMajor == 1 && pdp->presentMinor >= 2))) has_multibuffer = true; (void) __glXInitialize(psc->base.dpy); |