@@ -72,19 +72,24 @@ return value; } @implementation OFTarArchiveEntry -+ (instancetype)entryWithFileName: (OFString *)fileName -{ - return [[[self alloc] initWithFileName: fileName] autorelease]; -} - - (instancetype)init { OF_INVALID_INIT_METHOD } + +- (instancetype)of_init +{ + self = [super init]; + + _type = OFTarArchiveEntryTypeFile; + _mode = 0644; + + return self; +} - (instancetype)of_initWithHeader: (unsigned char [512])header encoding: (OFStringEncoding)encoding { self = [super init]; @@ -137,26 +142,10 @@ _fileName = [fileName copy]; } } objc_autoreleasePoolPop(pool); - } @catch (id e) { - [self release]; - @throw e; - } - - return self; -} - -- (instancetype)initWithFileName: (OFString *)fileName -{ - self = [super init]; - - @try { - _fileName = [fileName copy]; - _type = OFTarArchiveEntryTypeFile; - _mode = 0644; } @catch (id e) { [self release]; @throw e; }