Возможная утечка Результат анализатора не исчезнет

У меня есть этот метод, и анализатор говорит мне о потенциальной утечке изменяемого массива itemsArray. Я добавил соответствующий release в конце метода, но все равно результат анализатора остается.

- (void)addCategory:(NSString*)category {
    NSMutableArray *itemsArray = [[NSMutableArray alloc] initWithCapacity:1];

    if (category) {
        [[APP_DELEGATE itemsDictionary] setObject:itemsArray forKey:category];  
    }

    [self dismissModalViewControllerAnimated:YES];
    [itemsArray release];
}

Как я могу это исправить?

Спасибо.


person joec    schedule 02.12.2010    source источник


Ответы (2)


Этот код не вызывает никаких проблем с анализатором:

static NSMutableDictionary *itemsDictionary;

- (void)addCategory:(NSString*)category {
    NSMutableArray *itemsArray = [[NSMutableArray alloc] initWithCapacity:1];

    if (category) {
        [itemsDictionary setObject:itemsArray forKey:category];  
    }

    [self dismissModalViewControllerAnimated:YES];
    [itemsArray release];
}

Можете ли вы опубликовать точную формулировку (или, возможно, скриншот) предупреждения, которое вы видите?

person Kendall Helmstetter Gelner    schedule 02.12.2010

почему бы вам не попробовать поместить [релиз itemArray] перед строкой [self rejectModalViewControllerAnimated:YES];

person justicepenny    schedule 02.12.2010