Fixes for dealloc when init has not been called.

This commit is contained in:
rfm 2024-11-17 16:41:59 +00:00
parent 65b9b55e01
commit 6a723e5a87
5 changed files with 15 additions and 12 deletions

View file

@ -8440,7 +8440,7 @@ GS_PRIVATE_INTERNAL(GSMimeSMTPClient)
- (void) dealloc
{
[self abort];
if (internal != nil)
if (GS_EXISTS_INTERNAL)
{
DESTROY(internal->reply);
DESTROY(internal->wdata);

View file

@ -857,7 +857,7 @@ static NSLock *cached_proxies_gate = nil;
if (debug_connection)
NSLog(@"deallocating %@", self);
[self finalize];
if (internal != nil)
if (GS_EXISTS_INTERNAL)
{
GS_DESTROY_INTERNAL(NSConnection);
}

View file

@ -155,7 +155,7 @@ static NSDateFormatterBehavior _defaultBehavior = 0;
- (void) dealloc
{
RELEASE(_dateFormat);
if (internal != 0)
if (GS_EXISTS_INTERNAL)
{
RELEASE(internal->_locale);
RELEASE(internal->_tz);

View file

@ -559,7 +559,7 @@ static NSUInteger _defaultBehavior = NSNumberFormatterBehavior10_4;
RELEASE(_attributedStringForNil);
RELEASE(_attributedStringForNotANumber);
RELEASE(_attributedStringForZero);
if (internal != 0)
if (GS_EXISTS_INTERNAL)
{
int idx;

View file

@ -193,7 +193,7 @@ static void *queuePriorityCtxt = (void*)"queuePriority";
{
/* Only clean up if ivars have been initialised
*/
if (internal && internal->lock)
if (GS_EXISTS_INTERNAL)
{
NSOperation *op;
@ -800,13 +800,16 @@ static NSOperationQueue *mainQueue = nil;
- (void) dealloc
{
[self cancelAllOperations];
DESTROY(internal->operations);
DESTROY(internal->starting);
DESTROY(internal->waiting);
DESTROY(internal->name);
DESTROY(internal->cond);
DESTROY(internal->lock);
GS_DESTROY_INTERNAL(NSOperationQueue);
if (GS_EXISTS_INTERNAL)
{
DESTROY(internal->operations);
DESTROY(internal->starting);
DESTROY(internal->waiting);
DESTROY(internal->name);
DESTROY(internal->cond);
DESTROY(internal->lock);
GS_DESTROY_INTERNAL(NSOperationQueue);
}
[super dealloc];
}