summaryrefslogtreecommitdiffstats
path: root/src/declarative/qml/qdeclarativedata_p.h
diff options
context:
space:
mode:
authorThiago Macieira <thiago.macieira@nokia.com>2010-05-20 14:36:25 (GMT)
committerThiago Macieira <thiago.macieira@nokia.com>2010-05-20 14:36:25 (GMT)
commite4dc3567af533df2e57425952c4609726515d2cd (patch)
tree72824b5efc9a4d6ed9f099d34404076245e164fa /src/declarative/qml/qdeclarativedata_p.h
parenta36e8ca7afd0c15e5ec73bf4ea21464ab89a3662 (diff)
parentdbfedcb31961579499fcb5342ccc42311191bcd4 (diff)
downloadQt-e4dc3567af533df2e57425952c4609726515d2cd.zip
Qt-e4dc3567af533df2e57425952c4609726515d2cd.tar.gz
Qt-e4dc3567af533df2e57425952c4609726515d2cd.tar.bz2
Merge remote branch 'origin/master'
Conflicts: src/gui/dialogs/qnspanelproxy_mac.mm
Diffstat (limited to 'src/declarative/qml/qdeclarativedata_p.h')
-rw-r--r--src/declarative/qml/qdeclarativedata_p.h10
1 files changed, 6 insertions, 4 deletions
diff --git a/src/declarative/qml/qdeclarativedata_p.h b/src/declarative/qml/qdeclarativedata_p.h
index 4a56536..e916273 100644
--- a/src/declarative/qml/qdeclarativedata_p.h
+++ b/src/declarative/qml/qdeclarativedata_p.h
@@ -152,11 +152,11 @@ public:
template<class T>
void QDeclarativeGuard<T>::addGuard()
{
- if (QObjectPrivate::get(o)->wasDeleted) {
- if (prev) remGuard();
+ Q_ASSERT(!prev);
+
+ if (QObjectPrivate::get(o)->wasDeleted)
return;
- }
-
+
QDeclarativeData *data = QDeclarativeData::get(o, true);
next = data->guards;
if (next) reinterpret_cast<QDeclarativeGuard<T> *>(next)->prev = &next;
@@ -167,6 +167,8 @@ void QDeclarativeGuard<T>::addGuard()
template<class T>
void QDeclarativeGuard<T>::remGuard()
{
+ Q_ASSERT(prev);
+
if (next) reinterpret_cast<QDeclarativeGuard<T> *>(next)->prev = prev;
*prev = next;
next = 0;