Если вы получаете сбой, когда получаете предупреждение о памяти, это обычно означает, что что-то освобождается, но указатель не установлен на ноль, вы пытаетесь получить к нему доступ, и Crash!
Подобные ошибки бывает сложно отследить. Несколько типов:
Вы можете поиграть с инструментами XCode (используя Build & Profile в XCode 4) - в частности, с инструментами Zombies, которые «хранят мертвые объекты вокруг (как зомби)», но сообщают, когда к ним обращаются.
Еще один полезный момент - точка наблюдения. Когда симулятор запустится, щелкните правой кнопкой мыши переменную в консоли и скажите «Смотреть этот адрес». Тогда любая строка кода, которая вызывает изменение в этой области памяти, будет вызывать точку останова, когда это происходит.
Еще одна вещь, которую стоит попробовать, - это просто пробежаться по всем вашим ivars, init и dealloc и убедиться, что вы действительно получили все случаи.