Title: [284896] trunk/Source/WebKit
Revision
284896
Author
[email protected]
Date
2021-10-26 14:13:02 -0700 (Tue, 26 Oct 2021)

Log Message

[AppSSO] Avoid attempting to display a nil view controller
https://bugs.webkit.org/show_bug.cgi?id=232311
<rdar://problem/55199117>

Reviewed by Kate Cheney.

Avoid attempting to present a nil NSViewController. Instead, just treat the interaction as if
the authentication was cancelled.

* UIProcess/Cocoa/SOAuthorization/WKSOAuthorizationDelegate.mm:
(-[WKSOAuthorizationDelegate authorization:presentViewController:withCompletion:]):

Modified Paths

Diff

Modified: trunk/Source/WebKit/ChangeLog (284895 => 284896)


--- trunk/Source/WebKit/ChangeLog	2021-10-26 21:08:08 UTC (rev 284895)
+++ trunk/Source/WebKit/ChangeLog	2021-10-26 21:13:02 UTC (rev 284896)
@@ -1,3 +1,17 @@
+2021-10-26  Brent Fulgham  <[email protected]>
+
+        [AppSSO] Avoid attempting to display a nil view controller
+        https://bugs.webkit.org/show_bug.cgi?id=232311
+        <rdar://problem/55199117>
+
+        Reviewed by Kate Cheney.
+
+        Avoid attempting to present a nil NSViewController. Instead, just treat the interaction as if
+        the authentication was cancelled.
+
+        * UIProcess/Cocoa/SOAuthorization/WKSOAuthorizationDelegate.mm:
+        (-[WKSOAuthorizationDelegate authorization:presentViewController:withCompletion:]):
+
 2021-10-26  Wenson Hsieh  <[email protected]>
 
         REGRESSION (r281054): [iOS] Context menu presents from wrong location when long pressing a link in Mail

Modified: trunk/Source/WebKit/UIProcess/Cocoa/SOAuthorization/WKSOAuthorizationDelegate.mm (284895 => 284896)


--- trunk/Source/WebKit/UIProcess/Cocoa/SOAuthorization/WKSOAuthorizationDelegate.mm	2021-10-26 21:08:08 UTC (rev 284895)
+++ trunk/Source/WebKit/UIProcess/Cocoa/SOAuthorization/WKSOAuthorizationDelegate.mm	2021-10-26 21:13:02 UTC (rev 284896)
@@ -46,6 +46,13 @@
         completion(NO, nil);
         return;
     }
+
+    if (!viewController) {
+        WKSOAUTHORIZATIONDELEGATE_RELEASE_LOG("authorization: No view controller to present, so completing with NO as success state.");
+        completion(NO, nil);
+        return;
+    }
+
     WKSOAUTHORIZATIONDELEGATE_RELEASE_LOG("authorization: presentingViewController %p", viewController);
     _session->presentViewController(viewController, completion);
 }
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to