Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 7337e801521b2c8c312d350e4997b867a3cd64b4
      
https://github.com/WebKit/WebKit/commit/7337e801521b2c8c312d350e4997b867a3cd64b4
  Author: Pascoe <[email protected]>
  Date:   2024-08-05 (Mon, 05 Aug 2024)

  Changed paths:
    M Source/WebKit/UIProcess/Cocoa/SOAuthorization/SOAuthorizationSession.h
    M Source/WebKit/UIProcess/Cocoa/SOAuthorization/SOAuthorizationSession.mm

  Log Message:
  -----------
  Avoid taking a Ref of SOAuthorizationSession in it's destructor
rdar://125530945
https://bugs.webkit.org/show_bug.cgi?id=274121

Reviewed by Chris Dumez.

If the window is minimized whenever the destructor of SOAuthorizationSession is 
called, it can
set up a notification that takes a protectedThis of SOAuthorizationSession. 
However this is invalid
because we are inside the destructor, making the program crash when this 
notification is called and
the protectedThis is used. To fix this, we avoid setting up these notifications 
whenever we are in
the destructor of SOAuthorizationSession.

This issue dates back to whenever this minimize work-around was added in 
rdar://55669065.

There have been quite a few attempts to fix this: rdar://59672418, 
rdar://73477045,
rdar://72375494, and rdar://65681530, but they didn't address the root issue.

* Source/WebKit/UIProcess/Cocoa/SOAuthorization/SOAuthorizationSession.h:
* Source/WebKit/UIProcess/Cocoa/SOAuthorization/SOAuthorizationSession.mm:
(WebKit::SOAuthorizationSession::~SOAuthorizationSession):
(WebKit::SOAuthorizationSession::becomeCompleted):
(WebKit::SOAuthorizationSession::dismissViewController):

Originally-landed-as: 272448.1025@safari-7618-branch (ee9683422733). 
rdar://132954964
Canonical link: https://commits.webkit.org/281835@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to