summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorQt Continuous Integration System <qt-info@nokia.com>2011-07-09 03:31:34 (GMT)
committerQt Continuous Integration System <qt-info@nokia.com>2011-07-09 03:31:34 (GMT)
commit3d7252234b86cbf791dd1bb747befcaab688877f (patch)
tree33e3c132a96b68c7e7fe946c2cafd4dad9ebe15d
parent8ff8d45451c1cf7d31750f945fe58067121e92f4 (diff)
parent96960787f7cb6f3937cdf7e3da77988259979008 (diff)
downloadQt-3d7252234b86cbf791dd1bb747befcaab688877f.zip
Qt-3d7252234b86cbf791dd1bb747befcaab688877f.tar.gz
Qt-3d7252234b86cbf791dd1bb747befcaab688877f.tar.bz2
Merge branch 'master' of scm.dev.nokia.troll.no:qt/qt-earth-staging into master-integration
* 'master' of scm.dev.nokia.troll.no:qt/qt-earth-staging: Fix resource leak in symbian socket engine Use memmove in QListData::append(int) as regions overlap.
-rw-r--r--src/corelib/tools/qlist.cpp2
-rw-r--r--src/network/socket/qsymbiansocketengine.cpp1
2 files changed, 2 insertions, 1 deletions
diff --git a/src/corelib/tools/qlist.cpp b/src/corelib/tools/qlist.cpp
index 36a9c60..e68ddd5 100644
--- a/src/corelib/tools/qlist.cpp
+++ b/src/corelib/tools/qlist.cpp
@@ -237,7 +237,7 @@ void **QListData::append(int n)
if (b - n >= 2 * d->alloc / 3) {
// we have enough space. Just not at the end -> move it.
e -= b;
- ::memcpy(d->array, d->array + b, e * sizeof(void *));
+ ::memmove(d->array, d->array + b, e * sizeof(void *));
d->begin = 0;
} else {
realloc(grow(d->alloc + n));
diff --git a/src/network/socket/qsymbiansocketengine.cpp b/src/network/socket/qsymbiansocketengine.cpp
index 0aa5a5a..966af88 100644
--- a/src/network/socket/qsymbiansocketengine.cpp
+++ b/src/network/socket/qsymbiansocketengine.cpp
@@ -264,6 +264,7 @@ QSymbianSocketEnginePrivate::QSymbianSocketEnginePrivate() :
QSymbianSocketEnginePrivate::~QSymbianSocketEnginePrivate()
{
+ selectTimer.Close();
}