Почему при использовании MFMailComposeViewController течет память?

Здравствуйте, такая проблема:

При использовании MFMailComposeViewController после нажатия "Отмена" в модальном диалоге с письмом выделяется какое-то количество памяти и не освобождается впоследствии. Если повторить это действие, происходит то же самое (продолжает выделяться память).

Использую такой код
MFMailComposeViewController *mc = [[MFMailComposeViewController alloc] init];
    mc.mailComposeDelegate = self;
    [mc setSubject:emailTitle];
    [mc setMessageBody:messageBody isHTML:YES];
    
    [[CCDirector sharedDirector] presentViewController:mc animated:YES completion:nil];
    
    [mc release];

и
- (void) mailComposeController:(MFMailComposeViewController *)controller didFinishWithResult:(MFMailComposeResult)result error:(NSError *)error
{
    [[CCDirector sharedDirector] dismissViewControllerAnimated:YES completion:NULL];
}


На всякий случай. CCDirector - наследник UIViewController.

Если кто-то знает, в чем причина, подскажите, пожалуйста.

Спасибо.
  • Вопрос задан
  • 2614 просмотров
Пригласить эксперта
Ответы на вопрос 1
@CT4H
Включить ARC в настройках проекта и удалите строчку [mc release]; (Во всем проекте придется удалить строчки [.. release]), ну либо ручками в методе didFinishWithResult освобождайте память

P.S. При использовании синглтона UIViewController могут возникнуть проблемы. Почитайте о MVC и паттернах obj-c
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы