summaryrefslogtreecommitdiffstats
path: root/src/corelib/global/qglobalstatic.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Fix Q_GLOBAL_STATIC support for exceptionsThiago Macieira2013-02-281-3/+5
| | | | | | | | | | | | | | | | | The problem was that the HolderBase destructor was getting called after the contained type's constructor threw an exception, as is required by RAII semantics (the base was fully initialized, so it had to be destroyed). That was required because we want to return a non-null pointer from operator() during destruction and return null after destruction, to keep compatibility with Qt 4. The solution is to only set the guard to Destroyed only if it is already at value Initialized. This way, if the HolderBase destructor is run as part of the stack unwinding, it knows that the construction did not complete. Change-Id: I9849b43ed7112bf9e70861b48a56a924c286617e Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* Doc: write up the docs for Q_GLOBAL_STATICThiago Macieira2013-01-241-0/+522
Change-Id: I5bf4d0d027dc8f960c94b4be3ebf7381e9ef4be1 Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com> Reviewed-by: Olivier Goffart <ogoffart@woboq.com>