Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 860c2ba52717fbcc180fa51464d1a92fc8d10acd
https://github.com/WebKit/WebKit/commit/860c2ba52717fbcc180fa51464d1a92fc8d10acd
Author: Chris Dumez <[email protected]>
Date: 2024-11-07 (Thu, 07 Nov 2024)
Changed paths:
M Source/JavaScriptCore/runtime/JSRunLoopTimer.h
M Source/WTF/wtf/MemoryPressureHandler.h
M Source/WTF/wtf/RunLoop.h
M Source/WTF/wtf/linux/RealTimeThreads.h
M Source/WebCore/Modules/mediasession/MediaSession.cpp
M Source/WebCore/Modules/mediastream/MediaStreamTrack.cpp
M Source/WebCore/Modules/mediastream/UserMediaRequest.cpp
M Source/WebCore/Modules/webaudio/AudioContext.cpp
M Source/WebCore/PAL/pal/HysteresisActivity.h
M Source/WebCore/accessibility/atspi/AccessibilityAtspi.h
M Source/WebCore/bindings/js/GCController.h
M Source/WebCore/dom/Document.cpp
M Source/WebCore/dom/DocumentFontLoader.h
M Source/WebCore/dom/EventSender.h
M Source/WebCore/editing/SpellChecker.h
M Source/WebCore/html/HTMLMediaElement.cpp
M Source/WebCore/html/MediaElementSession.cpp
M Source/WebCore/html/ValidationMessage.h
M Source/WebCore/html/parser/HTMLParserScheduler.h
M Source/WebCore/inspector/InspectorOverlay.h
M Source/WebCore/inspector/agents/InspectorAnimationAgent.h
M Source/WebCore/inspector/agents/InspectorCSSAgent.h
M Source/WebCore/inspector/agents/InspectorCanvasAgent.h
M Source/WebCore/inspector/agents/InspectorDOMAgent.cpp
M Source/WebCore/inspector/agents/InspectorDOMAgent.h
M Source/WebCore/inspector/agents/WebHeapAgent.cpp
M Source/WebCore/loader/ImageLoader.h
M Source/WebCore/loader/SubresourceLoader.cpp
M Source/WebCore/loader/TextTrackLoader.h
M Source/WebCore/loader/cache/CachedResource.cpp
M Source/WebCore/loader/cache/CachedResource.h
M Source/WebCore/loader/cache/CachedResourceLoader.cpp
M Source/WebCore/loader/cache/MemoryCache.cpp
M Source/WebCore/loader/cache/MemoryCache.h
M Source/WebCore/page/AutoscrollController.h
M Source/WebCore/page/ImageAnalysisQueue.h
M Source/WebCore/page/Page.cpp
M Source/WebCore/page/PerformanceMonitor.h
M Source/WebCore/page/SettingsBase.h
M Source/WebCore/page/ios/DOMTimerHoldingTank.h
M Source/WebCore/page/mac/ServicesOverlayController.h
M Source/WebCore/page/mac/TextIndicatorWindow.h
M Source/WebCore/page/scrolling/ScrollLatchingController.h
M Source/WebCore/platform/CPUMonitor.h
M Source/WebCore/platform/CaretAnimator.h
M Source/WebCore/platform/MainThreadSharedTimer.h
M Source/WebCore/platform/Timer.h
M Source/WebCore/platform/audio/PlatformMediaSession.cpp
M Source/WebCore/platform/audio/PlatformMediaSessionManager.cpp
M Source/WebCore/platform/audio/PlatformMediaSessionManager.h
M Source/WebCore/platform/audio/cocoa/MediaSessionManagerCocoa.mm
M Source/WebCore/platform/audio/glib/MediaSessionManagerGLib.cpp
M Source/WebCore/platform/gamepad/cocoa/GameControllerGamepadProvider.h
M Source/WebCore/platform/gamepad/libwpe/GamepadProviderLibWPE.h
M Source/WebCore/platform/gamepad/mac/HIDGamepadProvider.h
M Source/WebCore/platform/gamepad/manette/ManetteGamepadProvider.h
M Source/WebCore/platform/generic/ScrollbarsControllerGeneric.h
M Source/WebCore/platform/graphics/FontCache.h
M Source/WebCore/platform/graphics/ImageFrameAnimator.h
M Source/WebCore/platform/graphics/MediaPlaybackTargetPicker.h
M Source/WebCore/platform/graphics/ShadowBlur.cpp
M Source/WebCore/platform/graphics/ca/TileCoverageMap.h
M Source/WebCore/platform/graphics/ca/TileGrid.h
M Source/WebCore/platform/graphics/cg/CGSubimageCacheWithTimer.h
M
Source/WebCore/platform/graphics/cocoa/MediaEngineConfigurationFactoryCocoa.cpp
M Source/WebCore/platform/graphics/texmap/BitmapTexturePool.h
M Source/WebCore/platform/ios/LegacyTileCache.h
M Source/WebCore/platform/mac/ScrollbarsControllerMac.h
M Source/WebCore/platform/mock/DeviceOrientationClientMock.h
M Source/WebCore/platform/mock/MockRealtimeAudioSource.cpp
M Source/WebCore/platform/network/DNSResolveQueue.h
M Source/WebCore/rendering/RenderLayerCompositor.h
M Source/WebCore/rendering/RenderMarquee.h
M Source/WebCore/testing/Internals.cpp
M Source/WebKit/GPUProcess/GPUProcess.cpp
M Source/WebKit/NetworkProcess/Downloads/DownloadMonitor.h
M Source/WebKit/NetworkProcess/NetworkProcess.cpp
M Source/WebKit/NetworkProcess/NetworkSession.h
M Source/WebKit/NetworkProcess/cache/PrefetchCache.h
M Source/WebKit/NetworkProcess/glib/DNSCache.h
M Source/WebKit/Shared/API/APISerializedScriptValue.cpp
M Source/WebKit/Shared/SharedStringHashStore.h
M Source/WebKit/Shared/WebMemorySampler.h
M Source/WebKit/UIProcess/API/Cocoa/APISerializedScriptValueCocoa.mm
M Source/WebKit/UIProcess/API/Cocoa/NSAttributedString.mm
M Source/WebKit/UIProcess/API/glib/APISerializedScriptValueGLib.cpp
M Source/WebKit/UIProcess/API/glib/WebKitUIClient.cpp
M Source/WebKit/UIProcess/API/gtk/WebKitWebViewBase.cpp
M Source/WebKit/UIProcess/API/gtk/WebKitWebViewGtk.cpp
M Source/WebKit/UIProcess/BackgroundProcessResponsivenessTimer.h
M Source/WebKit/UIProcess/Cocoa/XPCConnectionTerminationWatchdog.h
M
Source/WebKit/UIProcess/CoordinatedGraphics/DrawingAreaProxyCoordinatedGraphics.h
M Source/WebKit/UIProcess/Gamepad/UIGamepadProvider.h
M Source/WebKit/UIProcess/Notifications/glib/NotificationService.cpp
M Source/WebKit/UIProcess/PerActivityStateCPUUsageSampler.h
M Source/WebKit/UIProcess/ProcessThrottler.cpp
M Source/WebKit/UIProcess/ProcessThrottler.h
M Source/WebKit/UIProcess/ResponsivenessTimer.h
M Source/WebKit/UIProcess/ViewGestureController.h
M Source/WebKit/UIProcess/WebBackForwardCacheEntry.h
M Source/WebKit/UIProcess/WebMemoryPressureHandler.cpp
M Source/WebKit/UIProcess/WebProcessCache.h
M Source/WebKit/UIProcess/geoclue/GeoclueGeolocationProvider.cpp
M Source/WebKit/UIProcess/glib/DisplayVBlankMonitor.h
M Source/WebKit/UIProcess/ios/GestureRecognizerConsistencyEnforcer.h
M Source/WebKit/UIProcess/ios/PointerTouchCompatibilitySimulator.h
M Source/WebKit/WebProcess/GPU/GPUProcessConnection.cpp
M Source/WebKit/WebProcess/InjectedBundle/API/c/WKBundlePage.cpp
M Source/WebKit/WebProcess/Network/WebLoaderStrategy.h
M Source/WebKit/WebProcess/WebPage/Cocoa/WebPageCocoa.mm
M Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/CompositingRunLoop.h
M Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/LayerTreeHost.h
M
Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/LayerTreeHostTextureMapper.h
M Source/WebKit/WebProcess/WebPage/WebPage.cpp
M Source/WebKit/WebProcess/WebPage/dmabuf/AcceleratedSurfaceDMABuf.h
M Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm
M Source/WebKit/WebProcess/WebProcess.cpp
M Source/WebKit/WebProcess/cocoa/WebProcessCocoa.mm
M Source/WebKit/webpushd/WebPushDaemon.h
M Source/WebKitLegacy/WebCoreSupport/PingHandle.h
M Source/WebKitLegacy/WebCoreSupport/WebResourceLoadScheduler.h
M Tools/TestWebKitAPI/Tests/WTF/RunLoop.cpp
M Tools/WebKitTestRunner/TestInvocation.h
M Tools/WebKitTestRunner/gtk/TestControllerGtk.cpp
M Tools/WebKitTestRunner/libwpe/PlatformWebViewClientLibWPE.cpp
M Tools/WebKitTestRunner/wpe/TestControllerWPE.cpp
Log Message:
-----------
Require classes using Timer to be ref-counted or CanMakeCheckedPtr
https://bugs.webkit.org/show_bug.cgi?id=282590
Reviewed by Geoffrey Garen.
Require classes using Timer to be ref-counted or CanMakeCheckedPtr, for safety.
The Timer class leverages this fact to protect the object it is calling the
timeout function on.
* Source/JavaScriptCore/runtime/JSRunLoopTimer.h:
(JSC::JSRunLoopTimer::Manager::ref const):
(JSC::JSRunLoopTimer::Manager::deref const):
* Source/WTF/wtf/MemoryPressureHandler.h:
(WTF::MemoryPressureHandler::ref const):
(WTF::MemoryPressureHandler::deref const):
* Source/WTF/wtf/RunLoop.h:
* Source/WebCore/PAL/pal/HysteresisActivity.h:
* Source/WebCore/bindings/js/GCController.h:
(WebCore::GCController::ref const):
(WebCore::GCController::deref const):
* Source/WebCore/dom/DocumentFontLoader.h:
* Source/WebCore/dom/EventSender.h:
* Source/WebCore/editing/SpellChecker.h:
* Source/WebCore/html/ValidationMessage.h:
* Source/WebCore/html/parser/HTMLParserScheduler.h:
* Source/WebCore/inspector/InspectorOverlay.h:
* Source/WebCore/inspector/agents/InspectorAnimationAgent.h:
* Source/WebCore/inspector/agents/InspectorCSSAgent.h:
* Source/WebCore/inspector/agents/InspectorCanvasAgent.h:
* Source/WebCore/inspector/agents/InspectorDOMAgent.cpp:
* Source/WebCore/inspector/agents/InspectorDOMAgent.h:
* Source/WebCore/inspector/agents/WebHeapAgent.cpp:
* Source/WebCore/loader/ImageLoader.h:
* Source/WebCore/loader/TextTrackLoader.h:
* Source/WebCore/loader/cache/CachedResource.cpp:
(WebCore::CachedResourceCallback::CachedResourceCallback):
(WebCore::CachedResourceCallback::cancel):
(WebCore::CachedResourceCallback::timerFired):
(WebCore::CachedResource::Callback::Callback): Deleted.
(WebCore::CachedResource::Callback::cancel): Deleted.
(WebCore::CachedResource::Callback::timerFired): Deleted.
* Source/WebCore/loader/cache/CachedResource.h:
* Source/WebCore/loader/cache/MemoryCache.h:
(WebCore::MemoryCache::ref const):
(WebCore::MemoryCache::deref const):
* Source/WebCore/page/AutoscrollController.h:
* Source/WebCore/page/ImageAnalysisQueue.h:
* Source/WebCore/page/PerformanceMonitor.h:
* Source/WebCore/page/SettingsBase.h:
* Source/WebCore/page/mac/ServicesOverlayController.h:
* Source/WebCore/page/mac/TextIndicatorWindow.h:
* Source/WebCore/page/scrolling/ScrollLatchingController.h:
* Source/WebCore/platform/CPUMonitor.h:
* Source/WebCore/platform/CaretAnimator.h:
* Source/WebCore/platform/Timer.h:
(WebCore::Timer::Timer):
* Source/WebCore/platform/audio/PlatformMediaSessionManager.h:
(WebCore::PlatformMediaSessionManager::ref const):
(WebCore::PlatformMediaSessionManager::deref const):
* Source/WebCore/platform/audio/cocoa/MediaSessionManagerCocoa.mm:
(WebCore::PlatformMediaSessionManager::create):
* Source/WebCore/platform/gamepad/cocoa/GameControllerGamepadProvider.h:
(WebCore::GameControllerGamepadProvider::ref const):
(WebCore::GameControllerGamepadProvider::deref const):
* Source/WebCore/platform/gamepad/mac/HIDGamepadProvider.h:
(WebCore::HIDGamepadProvider::ref const):
(WebCore::HIDGamepadProvider::deref const):
* Source/WebCore/platform/graphics/FontCache.h:
* Source/WebCore/platform/graphics/ImageFrameAnimator.h:
* Source/WebCore/platform/graphics/MediaPlaybackTargetPicker.h:
* Source/WebCore/platform/graphics/ShadowBlur.cpp:
* Source/WebCore/platform/graphics/ca/TileCoverageMap.h:
* Source/WebCore/platform/graphics/ca/TileGrid.h:
* Source/WebCore/platform/graphics/cg/CGSubimageCacheWithTimer.h:
* Source/WebCore/platform/mac/ScrollbarsControllerMac.h:
* Source/WebCore/platform/mock/DeviceOrientationClientMock.h:
* Source/WebCore/platform/network/DNSResolveQueue.h:
(WebCore::DNSResolveQueue::ref const):
(WebCore::DNSResolveQueue::deref const):
* Source/WebCore/rendering/RenderLayerCompositor.h:
* Source/WebCore/rendering/RenderMarquee.h:
* Source/WebKit/NetworkProcess/Downloads/DownloadMonitor.h:
* Source/WebKit/NetworkProcess/NetworkSession.h:
* Source/WebKit/NetworkProcess/cache/PrefetchCache.h:
* Source/WebKit/Shared/API/APISerializedScriptValue.cpp:
(API::SharedJSContextWK::singleton):
(API::SharedJSContextWK::ref const):
(API::SharedJSContextWK::deref const):
(API::SharedJSContextWK::SharedJSContextWK):
(API::SerializedScriptValue::deserializeWK):
(API::sharedContext): Deleted.
* Source/WebKit/Shared/SharedStringHashStore.h:
* Source/WebKit/Shared/WebMemorySampler.h:
(WebKit::WebMemorySampler::ref const):
(WebKit::WebMemorySampler::deref const):
* Source/WebKit/UIProcess/API/Cocoa/APISerializedScriptValueCocoa.mm:
(API::SharedJSContext::singleton):
(API::SharedJSContext::ref const):
(API::SharedJSContext::deref const):
(API::SharedJSContext::SharedJSContext):
(API::SerializedScriptValue::deserialize):
(API::coreValueFromNSObject):
(API::sharedContext): Deleted.
* Source/WebKit/UIProcess/BackgroundProcessResponsivenessTimer.h:
* Source/WebKit/UIProcess/Cocoa/XPCConnectionTerminationWatchdog.h:
* Source/WebKit/UIProcess/Gamepad/UIGamepadProvider.h:
* Source/WebKit/UIProcess/PerActivityStateCPUUsageSampler.h:
* Source/WebKit/UIProcess/ProcessThrottler.cpp:
* Source/WebKit/UIProcess/ProcessThrottler.h:
* Source/WebKit/UIProcess/ResponsivenessTimer.h:
* Source/WebKit/UIProcess/ViewGestureController.h:
* Source/WebKit/UIProcess/WebBackForwardCacheEntry.h:
* Source/WebKit/UIProcess/WebProcessCache.h:
* Source/WebKit/WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
(TimerOwner::TimerOwner):
(TimerOwner::timerFired):
(WKBundlePageCallAfterTasksAndTimers):
* Source/WebKit/WebProcess/Network/WebLoaderStrategy.h:
* Source/WebKit/webpushd/WebPushDaemon.h:
(WebPushD::WebPushDaemon::ref const):
(WebPushD::WebPushDaemon::deref const):
* Source/WebKitLegacy/WebCoreSupport/PingHandle.h:
* Source/WebKitLegacy/WebCoreSupport/WebResourceLoadScheduler.h:
* Tools/TestWebKitAPI/Tests/WTF/RunLoop.cpp:
* Tools/WebKitTestRunner/TestInvocation.h:
Canonical link: https://commits.webkit.org/286283@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