diff options
author | 2013-05-04 16:12:07 -0700 | |
---|---|---|
committer | 2013-05-04 16:46:41 -0700 | |
commit | 729667252cd632357a3277ce1ef3220e5d61caf5 (patch) | |
tree | 6bf16f2122efcc7d9d260bc992bb96fc7d679e89 /src/core/basetypes/MCAutoreleasePool.cc | |
parent | 4f3dd27b20c155767100a0395553ad068135d750 (diff) |
use NSAutoreleasePool on Mac/iOS to implement MCAutoreleasePool
Diffstat (limited to 'src/core/basetypes/MCAutoreleasePool.cc')
-rw-r--r-- | src/core/basetypes/MCAutoreleasePool.cc | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/core/basetypes/MCAutoreleasePool.cc b/src/core/basetypes/MCAutoreleasePool.cc index 80f3e1a4..8c351bdf 100644 --- a/src/core/basetypes/MCAutoreleasePool.cc +++ b/src/core/basetypes/MCAutoreleasePool.cc @@ -20,6 +20,10 @@ AutoreleasePool::AutoreleasePool() { mPoolObjects = carray_new(4); +#if __APPLE__ + mAppleAutoreleasePool = createAppleAutoreleasePool(); +#endif + unsigned int idx; carray * stack = createAutoreleasePoolStackIfNeeded(); carray_add(stack, this, &idx); @@ -27,6 +31,10 @@ AutoreleasePool::AutoreleasePool() AutoreleasePool::~AutoreleasePool() { +#if __APPLE__ + releaseAppleAutoreleasePool(mAppleAutoreleasePool); +#endif + carray * stack = createAutoreleasePoolStackIfNeeded(); carray_delete_slow(stack, carray_count(stack) - 1); |