summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/xcb/qxcbwindow.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/platforms/xcb/qxcbwindow.cpp')
-rw-r--r--src/plugins/platforms/xcb/qxcbwindow.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/plugins/platforms/xcb/qxcbwindow.cpp b/src/plugins/platforms/xcb/qxcbwindow.cpp
index 34289fb90e..54ebca0532 100644
--- a/src/plugins/platforms/xcb/qxcbwindow.cpp
+++ b/src/plugins/platforms/xcb/qxcbwindow.cpp
@@ -206,6 +206,18 @@ static inline QImage::Format imageFormatForVisual(int depth, quint32 red_mask, q
break;
}
qWarning("Unsupported screen format: depth: %d, red_mask: %x, blue_mask: %x", depth, red_mask, blue_mask);
+
+ switch (depth) {
+ case 24:
+ qWarning("Using RGB32 fallback, if this works your X11 server is reporting a bad screen format.");
+ return QImage::Format_RGB32;
+ case 16:
+ qWarning("Using RGB16 fallback, if this works your X11 server is reporting a bad screen format.");
+ return QImage::Format_RGB16;
+ default:
+ break;
+ }
+
return QImage::Format_Invalid;
}