Index: src/bridge/NSOFArray.m ================================================================== --- src/bridge/NSOFArray.m +++ src/bridge/NSOFArray.m @@ -22,20 +22,22 @@ #import "OFOutOfRangeException.h" @implementation NSOFArray - (instancetype)initWithOFArray: (OFArray *)array { - if ((self = [super init]) != nil) { - @try { - _array = [array retain]; - } @catch (id e) { - return nil; - } - } + if ((self = [super init]) != nil) + _array = [array retain]; return self; } + +- (void)dealloc +{ + [_array release]; + + [super dealloc]; +} - (id)objectAtIndex: (NSUInteger)idx { id object = [_array objectAtIndex: idx]; Index: src/bridge/NSOFDictionary.m ================================================================== --- src/bridge/NSOFDictionary.m +++ src/bridge/NSOFDictionary.m @@ -24,20 +24,22 @@ #import "OFOutOfRangeException.h" @implementation NSOFDictionary - (instancetype)initWithOFDictionary: (OFDictionary *)dictionary { - if ((self = [super init]) != nil) { - @try { - _dictionary = [dictionary retain]; - } @catch (id e) { - return nil; - } - } + if ((self = [super init]) != nil) + _dictionary = [dictionary retain]; return self; } + +- (void)dealloc +{ + [_dictionary release]; + + [super dealloc]; +} - (id)objectForKey: (id)key { id object; Index: src/bridge/OFNSArray.m ================================================================== --- src/bridge/OFNSArray.m +++ src/bridge/OFNSArray.m @@ -39,10 +39,17 @@ @throw e; } return self; } + +- (void)dealloc +{ + [_array release]; + + [super dealloc]; +} - (id)objectAtIndex: (size_t)idx { id object; Index: src/bridge/OFNSDictionary.m ================================================================== --- src/bridge/OFNSDictionary.m +++ src/bridge/OFNSDictionary.m @@ -40,10 +40,17 @@ @throw e; } return self; } + +- (void)dealloc +{ + [_dictionary release]; + + [super dealloc]; +} - (id)objectForKey: (id)key { id object;