summaryrefslogtreecommitdiffstats
path: root/src/gui/image
diff options
context:
space:
mode:
authorQt Continuous Integration System <qt-info@nokia.com>2010-09-20 12:10:06 (GMT)
committerQt Continuous Integration System <qt-info@nokia.com>2010-09-20 12:10:06 (GMT)
commit0fd2c492ee2e8317a5fbb0fb446816df53d5b17b (patch)
tree0e2cb6a5a264b95ba5f38a0c279f730cb1fcbdc7 /src/gui/image
parent7f11c900e9184565321c09533b468abb047129b8 (diff)
parent6c8dcd5744e2c14d122f0967de72a9e171dd9715 (diff)
downloadQt-0fd2c492ee2e8317a5fbb0fb446816df53d5b17b.zip
Qt-0fd2c492ee2e8317a5fbb0fb446816df53d5b17b.tar.gz
Qt-0fd2c492ee2e8317a5fbb0fb446816df53d5b17b.tar.bz2
Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2 into 4.7-integration
* '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2: Fixes QPen dash offset for OpenGL paint engines (1.x & 2.x). Support multisampled pbuffers under Windows. tst_qpixmapfilter: Fix compilation in namespace qtextcodec_symbian: Add few aliases Give a warning in QPixmap::handle() if pixmap is not X11 class. Make QStaticText honor QPainter::pen() for rich text on X11 w/raster Fixed compilation of MeeGo graphics system without eglext.h Fixed memory corruption issue in qt_blurImage for Indexed8 images.
Diffstat (limited to 'src/gui/image')
-rw-r--r--src/gui/image/qpixmap.cpp8
-rw-r--r--src/gui/image/qpixmapfilter.cpp15
2 files changed, 17 insertions, 6 deletions
diff --git a/src/gui/image/qpixmap.cpp b/src/gui/image/qpixmap.cpp
index 66a861d..1e502bd 100644
--- a/src/gui/image/qpixmap.cpp
+++ b/src/gui/image/qpixmap.cpp
@@ -1177,8 +1177,12 @@ Qt::HANDLE QPixmap::handle() const
{
#if defined(Q_WS_X11)
const QPixmapData *pd = pixmapData();
- if (pd && pd->classId() == QPixmapData::X11Class)
- return static_cast<const QX11PixmapData*>(pd)->handle();
+ if (pd) {
+ if (pd->classId() == QPixmapData::X11Class)
+ return static_cast<const QX11PixmapData*>(pd)->handle();
+ else
+ qWarning("QPixmap::handle(): Pixmap is not an X11 class pixmap");
+ }
#endif
return 0;
}
diff --git a/src/gui/image/qpixmapfilter.cpp b/src/gui/image/qpixmapfilter.cpp
index 70770c4..26bffcc 100644
--- a/src/gui/image/qpixmapfilter.cpp
+++ b/src/gui/image/qpixmapfilter.cpp
@@ -764,10 +764,17 @@ void expblur(QImage &img, qreal radius, bool improvedQuality = false, int transp
}
if (transposed == 0) {
- qt_memrotate90(reinterpret_cast<const quint32*>(temp.bits()),
- temp.width(), temp.height(), temp.bytesPerLine(),
- reinterpret_cast<quint32*>(img.bits()),
- img.bytesPerLine());
+ if (img.depth() == 8) {
+ qt_memrotate90(reinterpret_cast<const quint8*>(temp.bits()),
+ temp.width(), temp.height(), temp.bytesPerLine(),
+ reinterpret_cast<quint8*>(img.bits()),
+ img.bytesPerLine());
+ } else {
+ qt_memrotate90(reinterpret_cast<const quint32*>(temp.bits()),
+ temp.width(), temp.height(), temp.bytesPerLine(),
+ reinterpret_cast<quint32*>(img.bits()),
+ img.bytesPerLine());
+ }
} else {
img = temp;
}