diff --git a/Source/Turbo Navigator/TurboNavigationHierarchyController.swift b/Source/Turbo Navigator/TurboNavigationHierarchyController.swift index 178e836..3aee27f 100644 --- a/Source/Turbo Navigator/TurboNavigationHierarchyController.swift +++ b/Source/Turbo Navigator/TurboNavigationHierarchyController.swift @@ -87,6 +87,8 @@ class TurboNavigationHierarchyController { } case .modal: if modalNavigationController.presentingViewController != nil, !modalNavigationController.isBeingDismissed { + /// Avoids `Attempt to present on which is already presenting.` in case a modal is being presented. + navigationController.dismiss(animated: proposal.animated) pushOrReplace(on: modalNavigationController, with: controller, via: proposal) } else { modalNavigationController.setViewControllers([controller], animated: proposal.animated)