Как всегда, когда у кого-то возникает проблема EXC_BAD_ACCESS, я рекомендую NSZombie. В вашем конкретном случае довольно легко понять, почему он рушится, поскольку вы выпускаете материал без предварительного выделения или сохранения его. Вы должны выпускать только те материалы, которые вы выделили или сохранили сами.
В случае, если в будущем у вас возникнет проблема EXC_BAD_ACCESS, это не так просто выяснить, вот как использовать NSZombie:
Чтобы активировать NSZombie, выполните следующие действия:
- Получить информацию об исполняемом файле.
- Перейти на вкладку аргументов.
- В разделе «Переменные, которые должны быть установлены в среде:» добавить:
Имя: NSZombieEnabled
Значение: ДА
Затем запустите ваше приложение как обычно, и когда оно выйдет из строя, оно должно сообщить вам, какой освобожденный объект получил сообщение о выпуске.