RESOLVED FIXED 131321
Web Inspector: Hang in debuggable application after receiving WIRPermissionDenied
https://bugs.webkit.org/show_bug.cgi?id=131321
Summary Web Inspector: Hang in debuggable application after receiving WIRPermissionDe...
Joseph Pecoraro
Reported 2014-04-07 16:01:35 PDT
Hang seen in application after receiving WIRPermissionDenied message: XPC Connection Queue ... 1000 _xpc_connection_call_event_handler + 58 (libxpc.dylib + 40329) [0x7fff88676d89] 1-1000 1000 Inspector::RemoteInspectorXPCConnection::handleEvent(void*) + 156 (JavaScriptCore + 4603324) [0x10e334dbc] 1-1000 1000 Inspector::RemoteInspector::xpcConnectionReceivedMessage(Inspector::RemoteInspectorXPCConnection*, NSString*, NSDictionary*) + 72 (JavaScriptCore + 4587976) [0x10e3311c8] 1-1000 1000 Inspector::RemoteInspector::stop() + 29 (JavaScriptCore + 4587437) [0x10e330fad] 1-1000 1000 std::__1::mutex::lock() + 9 (libc++.1.dylib + 248623) [0x7fff8f33fb2f] 1-1000 1000 __psynch_mutexwait + 10 (libsystem_kernel.dylib + 90754) [0x7fff95b3f282] 1-1000 *1000 psynch_mtxcontinue + 0 (pthread + 18499) [0xffffff7f80ed2843] 1-1000 Note RemoteInspector::xpcConnectionReceivedMessage took the mutex that Inspector::RemoteInspector::stop is waiting for. It already has the mutex. This is the only place stop() is called (other then the RemoteInspector API). Since stop() takes the lock, we can just move xpcConnectionReceivedMessage's lock after the disjoint branch that calls stop().
Attachments
[PATCH] Proposed Fix (1.72 KB, patch)
2014-04-07 16:03 PDT, Joseph Pecoraro
no flags
Radar WebKit Bug Importer
Comment 1 2014-04-07 16:02:21 PDT
Joseph Pecoraro
Comment 2 2014-04-07 16:03:48 PDT
Created attachment 228767 [details] [PATCH] Proposed Fix
WebKit Commit Bot
Comment 3 2014-04-07 16:45:45 PDT
Comment on attachment 228767 [details] [PATCH] Proposed Fix Clearing flags on attachment: 228767 Committed r166891: <http://trac.webkit.org/changeset/166891>
WebKit Commit Bot
Comment 4 2014-04-07 16:45:48 PDT
All reviewed patches have been landed. Closing bug.
Note You need to log in before you can comment on or make changes to this bug.