views:

341

answers:

1

The Leaks application tells me that the following function is causing a memory leak and I can't figure out why.

-(void)viewGameList {
GameListController *gameListViewController = [[GameListController alloc] initWithNibName:@"GameListController" bundle:nil];
gameListViewController.rootController = self;
[self.navigationController pushViewController:gameListViewController animated:YES];
[gameListViewController release];

}

It tells me that this line causes a 128 byte memory leak.

[self.navigationController pushViewController:gameListViewController animated:YES];

Am I missing something obvious?

A: 

One rule about iPhone memory management.

  • Child object must never retain its parent.

So, don't use retain in property declaration, use assign instead.

iwat