Не удается найти утечку из статического анализатора - PullRequest
1 голос
/ 25 апреля 2011

Я получаю некоторые ошибки от Clang Static Analyzer о том, что у меня есть несколько утечек из следующего кода. Однако я не могу найти утечку. Пожалуйста, скажите мне, где утечка.

 Favourites *fav = [[Favourites alloc] initWithNibName:@"Favourites" bundle:nil];
if (viewController == fav) {
    [fav doHud];
    [fav release];
}

1 Ответ

3 голосов
/ 25 апреля 2011

fav не будет выпущено, если viewController не заканчивается == в fav. Вы не устанавливаете viewController равным fav, поэтому он не будет выпущен. Переместите [fav release] за пределы if, и все будет в порядке.

или вообще избавьтесь от [fav release] и просто используйте авто-релиз, например:

Favourites *fav = [[[Favourites alloc] initWithNibName:@"Favourites" bundle:nil] autorelease];

...