diff --git a/MVMCore/MVMCore/PresentationHandling/NavigationOperation.swift b/MVMCore/MVMCore/PresentationHandling/NavigationOperation.swift index ad3e37d..a6aa16c 100644 --- a/MVMCore/MVMCore/PresentationHandling/NavigationOperation.swift +++ b/MVMCore/MVMCore/PresentationHandling/NavigationOperation.swift @@ -110,7 +110,8 @@ open class NavigationOperation: MVMCoreOperation, UINavigationControllerDelegate */ @MainActor open func set(viewControllers: [UIViewController], navigationController: UINavigationController, animated: Bool) { - guard viewControllers.count > 0 else { + guard viewControllers.count > 0, + navigationController.viewControllers != viewControllers else { // If the controller stack is the same, iOS will not call the delegate method of the change, causing the operation to hang. markAsFinished() return }