diff options
author | Thiago Macieira <thiago.macieira@nokia.com> | 2010-07-09 15:43:19 (GMT) |
---|---|---|
committer | Thiago Macieira <thiago.macieira@nokia.com> | 2010-07-09 17:50:46 (GMT) |
commit | 943d63e45ad09f75daa7d2f3dcc17bb28fda1766 (patch) | |
tree | 7f8b1edcd34853e0c64e8e4c4d73d7da1594609a /bin | |
parent | 8079d2951419a983df7b83cfa31f00665c3e76a3 (diff) | |
download | Qt-943d63e45ad09f75daa7d2f3dcc17bb28fda1766.zip Qt-943d63e45ad09f75daa7d2f3dcc17bb28fda1766.tar.gz Qt-943d63e45ad09f75daa7d2f3dcc17bb28fda1766.tar.bz2 |
Fix a crash when recursing into QSharedPointer from QSharedPointer::clear()
We used to delete the tracked object before the new tracking was
properly set up in QSharedPointer. That means if the tracked object's
destructor or deletion function recursed into the QSharedPointer, it
would find itself in an inconsistent state.
So instead finish the setup and only then call out to user code. That
ensures the internal state is always valid.
Task-number: QTBUG-11730
Reviewed-by: ossi
Diffstat (limited to 'bin')
0 files changed, 0 insertions, 0 deletions