diff options
author | Qt Continuous Integration System <qt-info@nokia.com> | 2010-11-06 04:55:01 (GMT) |
---|---|---|
committer | Qt Continuous Integration System <qt-info@nokia.com> | 2010-11-06 04:55:01 (GMT) |
commit | 7219ed4ba65b69f4c8829da176cb19684d012d90 (patch) | |
tree | bc7c764142fa4312a258f1c91a3659686d5abbc1 /src/corelib | |
parent | 8b01937c36632fca8774e90d22ce2aaeb2df883d (diff) | |
parent | 46910068c310460ee18b579a161618ea6a89f50e (diff) | |
download | Qt-7219ed4ba65b69f4c8829da176cb19684d012d90.zip Qt-7219ed4ba65b69f4c8829da176cb19684d012d90.tar.gz Qt-7219ed4ba65b69f4c8829da176cb19684d012d90.tar.bz2 |
Merge branch 'master' of scm.dev.nokia.troll.no:qt/oslo-staging-2 into master-integration
* 'master' of scm.dev.nokia.troll.no:qt/oslo-staging-2:
Silence warning in qvector with MSVC
QStyleSheetStyle: Fix crash that occurs with several instance of QStyleSheetStyle
QStyleSheetStyle: add a way to style the up arrow
QPointer: assert when using QPointer on destroyed QObject
Add missing Q_ENUMS to QAbstractSocket
Fix QMenu rendering in the unified toolbar
Add even more platform info, and make it expandable.
Hide nonfunctional links, and improve html
Diffstat (limited to 'src/corelib')
-rw-r--r-- | src/corelib/kernel/qobject.cpp | 2 | ||||
-rw-r--r-- | src/corelib/tools/qvector.h | 6 |
2 files changed, 5 insertions, 3 deletions
diff --git a/src/corelib/kernel/qobject.cpp b/src/corelib/kernel/qobject.cpp index 7fe9c52..12a09fd 100644 --- a/src/corelib/kernel/qobject.cpp +++ b/src/corelib/kernel/qobject.cpp @@ -392,6 +392,7 @@ void QMetaObject::addGuard(QObject **ptr) return; } QMutexLocker locker(guardHashLock()); + Q_ASSERT_X(!QObjectPrivate::get(*ptr)->wasDeleted, "QPointer", "Detected QPointer creation on a QObject being deleted"); QObjectPrivate::get(*ptr)->hasGuards = true; hash->insert(*ptr, ptr); } @@ -434,6 +435,7 @@ void QMetaObject::changeGuard(QObject **ptr, QObject *o) } QMutexLocker locker(guardHashLock()); if (o) { + Q_ASSERT_X(!QObjectPrivate::get(o)->wasDeleted, "QPointer", "Detected QPointer creation on a QObject being deleted"); hash->insert(o, ptr); QObjectPrivate::get(o)->hasGuards = true; } diff --git a/src/corelib/tools/qvector.h b/src/corelib/tools/qvector.h index 4044a66..0f7db88 100644 --- a/src/corelib/tools/qvector.h +++ b/src/corelib/tools/qvector.h @@ -304,7 +304,7 @@ public: #ifndef QT_NO_STL static inline QVector<T> fromStdVector(const std::vector<T> &vector) - { QVector<T> tmp; tmp.reserve(vector.size()); qCopy(vector.begin(), vector.end(), std::back_inserter(tmp)); return tmp; } + { QVector<T> tmp; tmp.reserve(int(vector.size())); qCopy(vector.begin(), vector.end(), std::back_inserter(tmp)); return tmp; } inline std::vector<T> toStdVector() const { std::vector<T> tmp; tmp.reserve(size()); qCopy(constBegin(), constEnd(), std::back_inserter(tmp)); return tmp; } #endif @@ -440,9 +440,9 @@ QVector<T>::QVector(int asize, const T &t) template <typename T> QVector<T>::QVector(std::initializer_list<T> args) { - d = malloc(args.size()); + d = malloc(int(args.size())); d->ref = 1; - d->alloc = d->size = args.size(); + d->alloc = d->size = int(args.size()); d->sharable = true; d->capacity = false; T* i = p->array + d->size; |