summaryrefslogtreecommitdiffstats
path: root/src/gui/image/qpixmap_x11.cpp
diff options
context:
space:
mode:
authorQt Continuous Integration System <qt-info@nokia.com>2010-02-10 04:06:47 +0100
committerQt Continuous Integration System <qt-info@nokia.com>2010-02-10 04:06:47 +0100
commitf74029e286e97067ac39086955481bf979af69dc (patch)
treeba6b9706b47624cb4dcd51a3fb4236ce4dddd5b3 /src/gui/image/qpixmap_x11.cpp
parent4a5e8e026bed24d451e2d36f490f42a17ed74b47 (diff)
parentec0f388dfb14712a144d534296b33df7e6a2df7f (diff)
Merge branch 'qt-master-from-4.6' of scm.dev.nokia.troll.no:qt/qt-integration into master-integration
* 'qt-master-from-4.6' of scm.dev.nokia.troll.no:qt/qt-integration: (104 commits) Documentation: clarified RVCT support for Symbian Update Symbian OS def files for 4.6.2 Remove the installer from the Qt sources. Don't remove all dependencies when patching the pkg. Fixes qabstractslider autotest Workaround for abld toolchain issue with s60main Add a recursive rule for running the auto-tests. Do not run the tests automatically during install. Enabling runfast mode when vfpv2 used. Fixing a test case to be runnable on Symbian device. [CRASH] audioinput and audiooutput examples crash when no devices are Fixed casual crash in initializeDb (Symbian) Fixes scrolling horizontally with a mouse wheel over sliders. don't use QKeySequence::mnemonic() after all Fixed qt_x11_wait_for_window_manager Revert change 34f1758 on non-Synbian platforms Fixed QGifHandler::loopCount(). Doc: Clarified ownership of custom buttons added to a QDialogButtonBox. Updated WebKit from /home/shausman/src/webkit/trunk to qtwebkit/qtwebkit-4.6 ( da5d96a26e80162027bc95ce7e5725fe4b277ff7 ) don't use stylesheet for just making labels bold ...
Diffstat (limited to 'src/gui/image/qpixmap_x11.cpp')
-rw-r--r--src/gui/image/qpixmap_x11.cpp14
1 files changed, 13 insertions, 1 deletions
diff --git a/src/gui/image/qpixmap_x11.cpp b/src/gui/image/qpixmap_x11.cpp
index 4de5bc4035..b9763761ba 100644
--- a/src/gui/image/qpixmap_x11.cpp
+++ b/src/gui/image/qpixmap_x11.cpp
@@ -68,6 +68,7 @@
#include "qx11info_x11.h"
#include <private/qdrawhelper_p.h>
#include <private/qimage_p.h>
+#include <private/qimagepixmapcleanuphooks_p.h>
#include <stdlib.h>
@@ -1234,6 +1235,12 @@ void QX11PixmapData::fill(const QColor &fillColor)
QX11PixmapData::~QX11PixmapData()
{
+ // Cleanup hooks have to be called before the handles are freed
+ if (is_cached) {
+ QImagePixmapCleanupHooks::executePixmapDataDestructionHooks(this);
+ is_cached = false;
+ }
+
release();
}
@@ -1242,8 +1249,13 @@ void QX11PixmapData::release()
delete pengine;
pengine = 0;
- if (!X11)
+ if (!X11) {
+#ifndef QT_NO_DEBUG
+ qWarning("~QX11PixmapData(): QPixmap objects must be destroyed before the QApplication"
+ " object, otherwise the native pixmap object will be leaked.");
+#endif
return;
+ }
if (x11_mask) {
#ifndef QT_NO_XRENDER