summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms
diff options
context:
space:
mode:
authorJędrzej Nowacki <jedrzej.nowacki@nokia.com>2011-11-17 16:58:38 +0100
committerQt by Nokia <qt-info@nokia.com>2011-11-18 10:31:07 +0100
commit2aba4e12babb5227a5370d0da5c8dfa7b832c5b9 (patch)
treeed5d50a86032b2ae6ceeb83480a6aca7791ace65 /src/plugins/platforms
parentabe5a0a432116963d22c4ef501a4dfd2393d66fb (diff)
Fix a memory leak in QXcbConnection.
Change-Id: I2307bf434c53d9321c71609eeacc1f3883bbbb13 Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Diffstat (limited to 'src/plugins/platforms')
-rw-r--r--src/plugins/platforms/xcb/qxcbconnection.cpp2
-rw-r--r--src/plugins/platforms/xcb/qxcbconnection.h4
2 files changed, 3 insertions, 3 deletions
diff --git a/src/plugins/platforms/xcb/qxcbconnection.cpp b/src/plugins/platforms/xcb/qxcbconnection.cpp
index bdf308adb3..15f69047e9 100644
--- a/src/plugins/platforms/xcb/qxcbconnection.cpp
+++ b/src/plugins/platforms/xcb/qxcbconnection.cpp
@@ -162,7 +162,7 @@ QXcbConnection::QXcbConnection(const char *displayName)
initializeXInput2();
#endif
- m_wmSupport = new QXcbWMSupport(this);
+ m_wmSupport.reset(new QXcbWMSupport(this));
m_keyboard = new QXcbKeyboard(this);
m_clipboard = new QXcbClipboard(this);
m_drag = new QXcbDrag(this);
diff --git a/src/plugins/platforms/xcb/qxcbconnection.h b/src/plugins/platforms/xcb/qxcbconnection.h
index 5887e57968..ebe95c0013 100644
--- a/src/plugins/platforms/xcb/qxcbconnection.h
+++ b/src/plugins/platforms/xcb/qxcbconnection.h
@@ -305,7 +305,7 @@ public:
QXcbClipboard *clipboard() const { return m_clipboard; }
QXcbDrag *drag() const { return m_drag; }
- QXcbWMSupport *wmSupport() const { return m_wmSupport; }
+ QXcbWMSupport *wmSupport() const { return m_wmSupport.data(); }
#ifdef XCB_USE_XLIB
void *xlib_display() const { return m_xlib_display; }
@@ -382,7 +382,7 @@ private:
QXcbKeyboard *m_keyboard;
QXcbClipboard *m_clipboard;
QXcbDrag *m_drag;
- QXcbWMSupport *m_wmSupport;
+ QScopedPointer<QXcbWMSupport> m_wmSupport;
#if defined(XCB_USE_XLIB)
void *m_xlib_display;