qt5base-lts/tests/auto/corelib/tools/tools.pro
Tor Arne Vestbø d2a988512e macOS: Detect use of heap-allocated QMacAutoReleasePool
QMacAutoReleasePool is backed by an NSAutoreleasePool, which documents that
"you should always drain an autorelease pool in the same context (invocation
of a method or function, or body of a loop) that it was created".

This means allocating QMacAutoReleasePool on the heap is not a supported
use-case, but unfortunately we can't detect it on construction time.

Instead we detect whether or not the associated NSAutoreleasePool has been
drained, and prevent a double-drain of the pool.

Change-Id: Ifd7380a06152e9e742d2e199476ed3adab326d9c
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2017-09-08 12:05:21 +00:00

71 lines
1.3 KiB
Prolog

TEMPLATE=subdirs
SUBDIRS=\
collections \
containerapisymmetry \
qalgorithms \
qarraydata \
qarraydata_strictiterators \
qbitarray \
qbytearray \
qbytearraylist \
qbytearraymatcher \
qbytedatabuffer \
qcache \
qchar \
qcollator \
qcommandlineparser \
qcontiguouscache \
qcryptographichash \
qdate \
qdatetime \
qeasingcurve \
qexplicitlyshareddatapointer \
qfreelist \
qhash \
qhash_strictiterators \
qhashfunctions \
qlatin1string \
qline \
qlinkedlist \
qlist \
qlist_strictiterators \
qlocale \
qmap \
qmap_strictiterators \
qmargins \
qmessageauthenticationcode \
qpair \
qpoint \
qpointf \
qqueue \
qrect \
qregexp \
qregularexpression \
qringbuffer \
qscopedpointer \
qscopedvaluerollback \
qset \
qsharedpointer \
qsize \
qsizef \
qstl \
qstring \
qstring_no_cast_from_bytearray \
qstringapisymmetry \
qstringbuilder \
qstringiterator \
qstringlist \
qstringmatcher \
qstringref \
qstringview \
qtextboundaryfinder \
qtime \
qtimezone \
qtimeline \
qvarlengtharray \
qvector \
qvector_strictiterators \
qversionnumber
darwin: SUBDIRS += qmacautoreleasepool