WebProcessProxy should use default settings values for near-suspended assertions when they have no page. In WebKit, settings come from pages. The WebProcessProxy therefore iterate through pages to figure out if it should take near-suspended assertions and if it should drop them after a delay. However, if the process doesn't have any pages, it would fall back to a value that is not the default value for these settings, which would lead to unexpected behavior in some case. This is particularly noticeable for service worker processes which often don't have pages.
<rdar://108292314>
Pull request: https://github.com/WebKit/WebKit/pull/13759
Committed 263975@main (a6ed791b6aab): <https://commits.webkit.org/263975@main> Reviewed commits have been landed. Closing PR #13759 and removing active labels.