Освобождение объектов - ваша собственная ответственность, поэтому вы должны освободить контроллер представления самостоятельно, либо после вызова presentModalViewController, либо через некоторое время (не рекомендуется)
Например:
MyController *controller = [[MyController alloc] init];
[self presentModalViewController:controller animated:YES];
// "controller" is automatically retained, so you can call release right away
[controller release];
Вызов dismissModalViewController позже автоматически освободит оставшийся контроллер.