Index: src/OFArray.m ================================================================== --- src/OFArray.m +++ src/OFArray.m @@ -40,11 +40,11 @@ self = [super init]; if (is == 0) { c = isa; - [self free]; + [super free]; @throw [OFInvalidArgumentException newWithClass: c]; } data = NULL; itemsize = is; Index: src/OFDictionary.m ================================================================== --- src/OFDictionary.m +++ src/OFDictionary.m @@ -39,11 +39,11 @@ @try { data = [self allocNItems: size withSize: sizeof(OFList*)]; } @catch (OFException *e) { - [self free]; + [super free]; @throw e; } memset(data, 0, size); return self; @@ -53,11 +53,11 @@ { self = [super init]; if (hashsize < 8 || hashsize > 31) { Class c = isa; - [self free]; + [super free]; @throw [OFInvalidArgumentException newWithClass: c andSelector: _cmd]; } @@ -65,11 +65,11 @@ @try { data = [self allocNItems: size withSize: sizeof(OFList*)]; } @catch (OFException *e) { - [self free]; + [super free]; @throw e; } memset(data, 0, size); return self; Index: src/OFString.m ================================================================== --- src/OFString.m +++ src/OFString.m @@ -166,11 +166,11 @@ } @try { string = [self allocWithSize: length + 1]; } @catch (OFException *e) { - [self free]; + [super free]; @throw e; } memcpy(string, str, length + 1); }