summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTrond Kjernåsen <trond@trolltech.com>2009-06-05 14:41:23 (GMT)
committerJason McDonald <jason.mcdonald@nokia.com>2009-06-07 02:50:56 (GMT)
commitb6e07ec20eae6ec48f68667243e40b6f8238fc7f (patch)
treefbe2387099a1a01024c90d9eea2e87e4f8207c74
parentb9d2abb2dccf6ff6846893c3b02ee1d8f563f780 (diff)
downloadQt-b6e07ec20eae6ec48f68667243e40b6f8238fc7f.zip
Qt-b6e07ec20eae6ec48f68667243e40b6f8238fc7f.tar.gz
Qt-b6e07ec20eae6ec48f68667243e40b6f8238fc7f.tar.bz2
Fixed an issue with graphicssystem raster on 8 and 16 bit X servers.
We didn't actually check the depth of the target window before calling the qt_x11_drawImage() fu, that will only work with depths >= 24. Task-number: 255311 Reviewed-by: Samuel BT: yes (cherry picked from commit d29da4699a2887cdf0836ff39652524d015431c0)
-rw-r--r--src/gui/painting/qwindowsurface_raster.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/gui/painting/qwindowsurface_raster.cpp b/src/gui/painting/qwindowsurface_raster.cpp
index 5c1c24e..2fd9380 100644
--- a/src/gui/painting/qwindowsurface_raster.cpp
+++ b/src/gui/painting/qwindowsurface_raster.cpp
@@ -229,7 +229,7 @@ void QRasterWindowSurface::flush(QWidget *widget, const QRegion &rgn, const QPoi
{
const QImage &src = d->image->image;
br = br.intersected(src.rect());
- if (src.format() != QImage::Format_RGB32) {
+ if (src.format() != QImage::Format_RGB32 || widget->x11Info().depth() < 24) {
QX11PixmapData *data = new QX11PixmapData(QPixmapData::PixmapType);
data->xinfo = widget->x11Info();
data->fromImage(src, Qt::AutoColor);