Title: [194005] trunk/Source/_javascript_Core
- Revision
- 194005
- Author
- joep...@webkit.org
- Date
- 2015-12-11 23:44:07 -0800 (Fri, 11 Dec 2015)
Log Message
Web Inspector: Too many derefs when RemoteInspectorXPCConnection fails to validate connection
https://bugs.webkit.org/show_bug.cgi?id=152213
Rubber-stamped by Ryosuke Niwa.
* inspector/remote/RemoteInspectorXPCConnection.mm:
(Inspector::RemoteInspectorXPCConnection::handleEvent):
We should just close the XPC connection triggering XPC_ERROR_CONNECTION_INVALID
which will then graceful teardown the connection as expected.
Modified Paths
Diff
Modified: trunk/Source/_javascript_Core/ChangeLog (194004 => 194005)
--- trunk/Source/_javascript_Core/ChangeLog 2015-12-12 06:58:15 UTC (rev 194004)
+++ trunk/Source/_javascript_Core/ChangeLog 2015-12-12 07:44:07 UTC (rev 194005)
@@ -1,3 +1,15 @@
+2015-12-11 Joseph Pecoraro <pecor...@apple.com>
+
+ Web Inspector: Too many derefs when RemoteInspectorXPCConnection fails to validate connection
+ https://bugs.webkit.org/show_bug.cgi?id=152213
+
+ Rubber-stamped by Ryosuke Niwa.
+
+ * inspector/remote/RemoteInspectorXPCConnection.mm:
+ (Inspector::RemoteInspectorXPCConnection::handleEvent):
+ We should just close the XPC connection triggering XPC_ERROR_CONNECTION_INVALID
+ which will then graceful teardown the connection as expected.
+
2015-12-11 Benjamin Poulain <bpoul...@apple.com>
[JSC] Add Floating Point Abs() to B3
Modified: trunk/Source/_javascript_Core/inspector/remote/RemoteInspectorXPCConnection.mm (194004 => 194005)
--- trunk/Source/_javascript_Core/inspector/remote/RemoteInspectorXPCConnection.mm 2015-12-12 06:58:15 UTC (rev 194004)
+++ trunk/Source/_javascript_Core/inspector/remote/RemoteInspectorXPCConnection.mm 2015-12-12 07:44:07 UTC (rev 194005)
@@ -173,16 +173,9 @@
audit_token_t token;
xpc_connection_get_audit_token(m_connection, &token);
if (!auditTokenHasEntitlement(token, @"com.apple.private.webinspector.webinspectord")) {
- {
- std::lock_guard<Lock> lock(m_mutex);
- if (m_client)
- m_client->xpcConnectionFailed(this);
-
- m_closed = true;
- m_client = nullptr;
- closeOnQueue();
- }
- deref();
+ std::lock_guard<Lock> lock(m_mutex);
+ // This will trigger one last XPC_ERROR_CONNECTION_INVALID event on the queue and deref us.
+ closeOnQueue();
return;
}
m_validated = true;
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes