Модальный контроллер представления должен иметь родительский контроллер представления для отображения. Если вы отклоните родительский контроллер представления («модальное представление A» в вашем случае), поведение будет непредсказуемым.
Если вы уверены, что вложенные контроллеры модального представления - это то, что вам действительно нужно, вам нужно отклонить их в обратном порядке; подождите, пока вы не закончите с "B", затем отбросьте "B", затем отбросьте "A".
Если вам не нужен модальный стиль представления, вам лучше использовать UINavigationController для поддержки стека контроллеров представления.
Обновление : вот как я бы изменил ваш порядок событий. Представлено как код для наглядности.
[parentView
presentViewController:modalViewControllerA
animated:YES]
[modalViewControllerA
presentViewController:modalViewControllerB
animated:YES]
[modalViewControllerA
dismissModalViewControllerAnimated:YES]
[parentView
dismissModalViewControllerAnimated:YES]