У меня такая же проблема. Я лишь временно сохраняю ViewController до тех пор, пока не вызову presentModalViewController, а затем освободил alloc. Но после dismissModalViewControllerAnimated я никогда не получаю разгрузку ViewController.
Если я добавляю самовоспроизведение из ViewController, то получаю это после того, как управление возвращается в цикл событий:
Программа получила сигнал: «EXC_BAD_ACCESS».
objc_msgSend