diff options
author | Olivier Goffart <olivier.goffart@nokia.com> | 2011-02-01 13:02:36 (GMT) |
---|---|---|
committer | Olivier Goffart <olivier.goffart@nokia.com> | 2011-02-01 13:02:36 (GMT) |
commit | 0533cd3a773952490eb0e5686afb7b235799a13f (patch) | |
tree | a1f14fe42a51499666921d58a6a5b62f1f916d8e /src/corelib/animation | |
parent | 9c132451acc7fbed1611fd3676cceb26e815f50d (diff) | |
parent | e5974b024828578945bd4c349f5f87f82a635225 (diff) | |
download | Qt-0533cd3a773952490eb0e5686afb7b235799a13f.zip Qt-0533cd3a773952490eb0e5686afb7b235799a13f.tar.gz Qt-0533cd3a773952490eb0e5686afb7b235799a13f.tar.bz2 |
Merge remote branch 'origin/4.7' into qt-master-from-4.7
Conflicts:
mkspecs/features/symbian/application_icon.prf
src/sql/drivers/odbc/qsql_odbc.cpp
Diffstat (limited to 'src/corelib/animation')
-rw-r--r-- | src/corelib/animation/qvariantanimation.cpp | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/src/corelib/animation/qvariantanimation.cpp b/src/corelib/animation/qvariantanimation.cpp index 212e85d..c76cb89 100644 --- a/src/corelib/animation/qvariantanimation.cpp +++ b/src/corelib/animation/qvariantanimation.cpp @@ -431,12 +431,17 @@ void QVariantAnimation::registerInterpolator(QVariantAnimation::Interpolator fun { // will override any existing interpolators QInterpolatorVector *interpolators = registeredInterpolators(); + // When built on solaris with GCC, the destructors can be called + // in such an order that we get here with interpolators == NULL, + // to continue causes the app to crash on exit with a SEGV + if (interpolators) { #ifndef QT_NO_THREAD - QMutexLocker locker(QMutexPool::globalInstanceGet(interpolators)); + QMutexLocker locker(QMutexPool::globalInstanceGet(interpolators)); #endif - if (int(interpolationType) >= interpolators->count()) - interpolators->resize(int(interpolationType) + 1); - interpolators->replace(interpolationType, func); + if (int(interpolationType) >= interpolators->count()) + interpolators->resize(int(interpolationType) + 1); + interpolators->replace(interpolationType, func); + } } |