Fall back to the default visual if no X8R8G8B8.
Bug 18510357
Change-Id: I2406106482b8c65408df783ebb78f5abd17a6320
Reviewed-on: https://swiftshader-review.googlesource.com/1593
Reviewed-by: Nicolas Capens <nicolascapens@google.com>
Tested-by: Nicolas Capens <nicolascapens@google.com>
diff --git a/src/Main/FrameBufferX11.cpp b/src/Main/FrameBufferX11.cpp
index 948c26b..7fb97e4 100644
--- a/src/Main/FrameBufferX11.cpp
+++ b/src/Main/FrameBufferX11.cpp
@@ -51,8 +51,8 @@
int depth = XDefaultDepth(x_display, screen);
Status status = XMatchVisualInfo(x_display, screen, 32, TrueColor, &x_visual);
- assert(status != 0 && x_visual.blue_mask == 0xFF); // Only X8R8G8B8 implemented
- Visual *visual = x_visual.visual;
+ bool match = (status != 0 && x_visual.blue_mask == 0xFF); // Prefer X8R8G8B8
+ Visual *visual = match ? x_visual.visual : XDefaultVisual(x_display, screen);
mit_shm = (XShmQueryExtension(x_display) == True);