Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: dc20f3f73c6b9aa0da5523525031b6501436dc4d https://github.com/WebKit/WebKit/commit/dc20f3f73c6b9aa0da5523525031b6501436dc4d Author: Timothy Hatcher <timo...@apple.com> Date: 2024-02-23 (Fri, 23 Feb 2024)
Changed paths: M Source/WTF/wtf/PlatformHave.h M Source/WTF/wtf/spi/cocoa/objcSPI.h M Source/WebKit/Shared/Cocoa/WKObject.h M Source/WebKit/UIProcess/API/Cocoa/_WKWebExtension.mm M Source/WebKit/UIProcess/API/Cocoa/_WKWebExtensionAction.mm M Source/WebKit/UIProcess/API/Cocoa/_WKWebExtensionCommand.mm M Source/WebKit/UIProcess/API/Cocoa/_WKWebExtensionContext.mm M Source/WebKit/UIProcess/API/Cocoa/_WKWebExtensionController.mm M Source/WebKit/UIProcess/API/Cocoa/_WKWebExtensionControllerConfiguration.mm M Source/WebKit/UIProcess/API/Cocoa/_WKWebExtensionDataRecord.mm M Source/WebKit/UIProcess/API/Cocoa/_WKWebExtensionMatchPattern.mm M Source/WebKit/UIProcess/API/Cocoa/_WKWebExtensionMessagePort.mm Log Message: ----------- _WKWebExtensionMessagePort is being deallocated on a background thread. https://webkit.org/b/270012 rdar://123529626 Reviewed by Darin Adler. Introduce WK_OBJECT_DEALLOC_ON_MAIN_THREAD() and WK_OBJECT_DEALLOC_IMPL_ON_MAIN_THREAD() macros that use _class_setCustomDeallocInitiation() to be able to dealloc on the main thread for both ARC and non-ARC objects. Start using these macros in the Web Extensions classes since they stopped using WebCoreObjCScheduleDeallocateOnMainRunLoop(). All objects currently using the WebCore dealloc helper can be switched over to use these new macros. * Source/WTF/wtf/PlatformHave.h: Added HAVE_OBJC_CUSTOM_DEALLOC. * Source/WTF/wtf/spi/cocoa/objcSPI.h: Added _class_setCustomDeallocInitiation and _objc_deallocOnMainThreadHelper. * Source/WebKit/Shared/Cocoa/WKObject.h: Added WK_OBJECT_DEALLOC_ON_MAIN_THREAD and WK_OBJECT_DEALLOC_IMPL_ON_MAIN_THREAD. * Source/WebKit/UIProcess/API/Cocoa/_WKWebExtension.mm: (-[_WKWebExtension dealloc]): Deleted. * Source/WebKit/UIProcess/API/Cocoa/_WKWebExtensionAction.mm: (-[_WKWebExtensionAction dealloc]): Deleted. * Source/WebKit/UIProcess/API/Cocoa/_WKWebExtensionCommand.mm: (-[_WKWebExtensionCommand dealloc]): Deleted. * Source/WebKit/UIProcess/API/Cocoa/_WKWebExtensionContext.mm: (-[_WKWebExtensionContext initForExtension:]): (-[_WKWebExtensionContext dealloc]): Deleted. * Source/WebKit/UIProcess/API/Cocoa/_WKWebExtensionController.mm: (-[_WKWebExtensionController dealloc]): Deleted. * Source/WebKit/UIProcess/API/Cocoa/_WKWebExtensionControllerConfiguration.mm: (-[_WKWebExtensionControllerConfiguration dealloc]): Deleted. * Source/WebKit/UIProcess/API/Cocoa/_WKWebExtensionDataRecord.mm: (-[_WKWebExtensionDataRecord dealloc]): Deleted. * Source/WebKit/UIProcess/API/Cocoa/_WKWebExtensionMatchPattern.mm: (-[_WKWebExtensionMatchPattern initWithCoder:]): (-[_WKWebExtensionMatchPattern encodeWithCoder:]): (-[_WKWebExtensionMatchPattern copyWithZone:]): (-[_WKWebExtensionMatchPattern dealloc]): Deleted. * Source/WebKit/UIProcess/API/Cocoa/_WKWebExtensionMessagePort.mm: (-[_WKWebExtensionMessagePort dealloc]): Deleted. Canonical link: https://commits.webkit.org/275272@main To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications _______________________________________________ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes