summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoni Poikelin <joni.poikelin@qt.io>2018-10-24 10:28:23 +0300
committerJoni Poikelin <joni.poikelin@qt.io>2018-10-30 10:08:47 +0000
commitfc1ab49cd75608f257fb9aa577fed490c5a8e551 (patch)
tree378ef3b8932dd3c2975149310366861a19166106
parent58d2180dfac2e279b7fae89d467b16d82d80eb7e (diff)
Fix leak in QContiguousCache::setCapacity
Fixes: QTBUG-52125 Change-Id: Id0073e73279d049cf3f89ef6ea3a5ca1027efb0d Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
-rw-r--r--src/corelib/tools/qcontiguouscache.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/corelib/tools/qcontiguouscache.h b/src/corelib/tools/qcontiguouscache.h
index faa7263d6b..fdb9c6d19a 100644
--- a/src/corelib/tools/qcontiguouscache.h
+++ b/src/corelib/tools/qcontiguouscache.h
@@ -217,6 +217,7 @@ void QContiguousCache<T>::setCapacity(int asize)
detach();
union { QContiguousCacheData *d; QContiguousCacheTypedData<T> *p; } x;
x.d = allocateData(asize);
+ x.d->ref.store(1);
x.d->alloc = asize;
x.d->count = qMin(d->count, asize);
x.d->offset = d->offset + d->count - x.d->count;