Index: src/OFAutoreleasePool.m ================================================================== --- src/OFAutoreleasePool.m +++ src/OFAutoreleasePool.m @@ -93,10 +93,12 @@ * release the pool without calling its release method? This way, * there wouldn't be a recursion. */ if (listobj->next != NULL) [listobj->next->object release]; + + [self releaseObjects]; [[OFThread objectForTLSKey: pool_list_key] remove: listobj]; [super dealloc]; } @@ -118,10 +120,13 @@ [super release]; } - releaseObjects { + if (listobj->next != NULL) + [listobj->next->object releaseObjects]; + if (objects == nil) return self; [objects release]; objects = nil;