summaryrefslogtreecommitdiffstats
path: root/src/corelib/tools/qsharedpointer_impl.h
diff options
context:
space:
mode:
authorFrederik Gladhorn <frederik.gladhorn@digia.com>2013-01-07 15:18:16 +0100
committerFrederik Gladhorn <frederik.gladhorn@digia.com>2013-01-07 15:18:16 +0100
commitcdf13ce286b14273e1e29c5bb02cbc880f31b786 (patch)
tree10733cb3fb35647b19cfd15ab158f56b1cb550e1 /src/corelib/tools/qsharedpointer_impl.h
parent21d607c81af0cd285e9bb3869ac3cd18358f1c8f (diff)
parenta8321f21fb82714771b4717c99dd475f2c74649e (diff)
Merge branch 'stable' into dev
Conflicts: tests/auto/widgets/graphicsview/qgraphicsscene/tst_qgraphicsscene.cpp Change-Id: I6b8d505fc22f052c307ca27f58f7d16f98965f47
Diffstat (limited to 'src/corelib/tools/qsharedpointer_impl.h')
-rw-r--r--src/corelib/tools/qsharedpointer_impl.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/corelib/tools/qsharedpointer_impl.h b/src/corelib/tools/qsharedpointer_impl.h
index 6393cc3970..2c8e03a5dd 100644
--- a/src/corelib/tools/qsharedpointer_impl.h
+++ b/src/corelib/tools/qsharedpointer_impl.h
@@ -813,6 +813,8 @@ template <class X, class T>
Q_INLINE_TEMPLATE QSharedPointer<X> qSharedPointerDynamicCast(const QSharedPointer<T> &src)
{
register X *ptr = dynamic_cast<X *>(src.data()); // if you get an error in this line, the cast is invalid
+ if (!ptr)
+ return QSharedPointer<X>();
return QtSharedPointer::copyAndSetPointer(ptr, src);
}
template <class X, class T>