@@ -834,35 +834,27 @@ } - (instancetype)initWithUTF8StringNoCopy: (char *)UTF8String freeWhenDone: (bool)freeWhenDone { - id ret; - - @try { - ret = [self initWithUTF8String: UTF8String]; - } @finally { - if (freeWhenDone) - free(UTF8String); - } + id ret = [self initWithUTF8String: UTF8String]; + + if (freeWhenDone) + free(UTF8String); return ret; } - (instancetype)initWithUTF8StringNoCopy: (char *)UTF8String length: (size_t)UTF8StringLength freeWhenDone: (bool)freeWhenDone { - id ret; - - @try { - ret = [self initWithUTF8String: UTF8String - length: UTF8StringLength]; - } @finally { - if (freeWhenDone) - free(UTF8String); - } + id ret = [self initWithUTF8String: UTF8String + length: UTF8StringLength]; + + if (freeWhenDone) + free(UTF8String); return ret; } - (instancetype)initWithCString: (const char *)cString