Title: [279014] trunk/Source/WebKit
Revision
279014
Author
[email protected]
Date
2021-06-17 15:14:17 -0700 (Thu, 17 Jun 2021)

Log Message

Clear state after process crash so that we know to re-issue sandbox extensions
https://bugs.webkit.org/show_bug.cgi?id=227103
<rdar://problem/77588760>

Reviewed by Per Arne Vollan.

We dynamically extend access to certain mach services when the ATTACHMENT_ELEMENT feature
is enabled. If a process with this feature activated crashes and WebKit relaunches it, we
don't grant the new process the same extensions because we believe they were already
previously sent.

This patch clears the state after a process crash so that it properly handles the restart case.

* UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::shutDown): Clear state.
(WebKit::WebProcessProxy::processDidTerminateOrFailedToLaunch): Clear state.

Modified Paths

Diff

Modified: trunk/Source/WebKit/ChangeLog (279013 => 279014)


--- trunk/Source/WebKit/ChangeLog	2021-06-17 22:12:53 UTC (rev 279013)
+++ trunk/Source/WebKit/ChangeLog	2021-06-17 22:14:17 UTC (rev 279014)
@@ -1,3 +1,22 @@
+2021-06-17  Brent Fulgham  <[email protected]>
+
+        Clear state after process crash so that we know to re-issue sandbox extensions
+        https://bugs.webkit.org/show_bug.cgi?id=227103
+        <rdar://problem/77588760>
+
+        Reviewed by Per Arne Vollan.
+
+        We dynamically extend access to certain mach services when the ATTACHMENT_ELEMENT feature
+        is enabled. If a process with this feature activated crashes and WebKit relaunches it, we
+        don't grant the new process the same extensions because we believe they were already
+        previously sent.
+
+        This patch clears the state after a process crash so that it properly handles the restart case.
+
+        * UIProcess/WebProcessProxy.cpp:
+        (WebKit::WebProcessProxy::shutDown): Clear state.
+        (WebKit::WebProcessProxy::processDidTerminateOrFailedToLaunch): Clear state.
+
 2021-06-17  Ben Nham  <[email protected]>
 
         Remove Mac-specific CPUTime functions

Modified: trunk/Source/WebKit/UIProcess/WebProcessProxy.cpp (279013 => 279014)


--- trunk/Source/WebKit/UIProcess/WebProcessProxy.cpp	2021-06-17 22:12:53 UTC (rev 279013)
+++ trunk/Source/WebKit/UIProcess/WebProcessProxy.cpp	2021-06-17 22:14:17 UTC (rev 279014)
@@ -479,6 +479,10 @@
     m_routingArbitrator->processDidTerminate();
 #endif
 
+#if ENABLE(ATTACHMENT_ELEMENT)
+    m_hasIssuedAttachmentElementRelatedSandboxExtensions = false;
+#endif
+
     m_processPool->disconnectProcess(*this);
 }
 
@@ -863,6 +867,10 @@
     m_userMediaCaptureManagerProxy->clear();
 #endif
 
+#if ENABLE(ATTACHMENT_ELEMENT)
+    m_hasIssuedAttachmentElementRelatedSandboxExtensions = false;
+#endif
+
     if (auto* webConnection = this->webConnection())
         webConnection->didClose();
 
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to