NSArray componentsJoinedByString内存泄漏

时间:2012-05-22 17:15:53

标签: objective-c ios memory-management memory-leaks automatic-ref-counting

我写了一个方法(如下所示)。该项目使用ARC编译,但由于第三方库依赖项,该方法所使用的文件必须使用-fno-objc-arc开关进行编译。

泄漏检查员告诉我

有泄漏
return [fragments componentsJoinedByString:@" "];

我看不到它 - 我可以要求另一双眼睛指出我的方式错误吗?

非常感谢

-(NSString *)trimAndTidy:(NSString *)aString
{
    NSCharacterSet *nsc = [NSCharacterSet characterSetWithCharactersInString:@"\r\n \t"];
    NSString *fragment;
    NSMutableArray *fragments = [NSMutableArray array];
    NSScanner *scanner = [NSScanner scannerWithString:aString];
    do
    {
        if ([scanner scanUpToCharactersFromSet:nsc intoString:&fragment])
            [fragments addObject:fragment];
    }
    while (![scanner isAtEnd]);
    return [fragments componentsJoinedByString:@" "];
}

1 个答案:

答案 0 :(得分:4)

泄漏检查员会告诉您泄漏的分配位置而不是泄漏的原因

要查找原因,您必须找到额外的retain或缺少release来电。