<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>140598</bug_id>
          
          <creation_ts>2015-01-18 14:41:12 -0800</creation_ts>
          <short_desc>[GTK] WebKit2 crash in IPC::Connection on OSX</short_desc>
          <delta_ts>2015-05-03 15:15:38 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKitGTK</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Mac (Intel)</rep_platform>
          <op_sys>OS X 10.10</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>INVALID</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Critical</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Philip Chimento">philip.chimento</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1062226</commentid>
    <comment_count>0</comment_count>
    <who name="Philip Chimento">philip.chimento</who>
    <bug_when>2015-01-18 14:41:12 -0800</bug_when>
    <thetext>I am trying to get WebKit2 to build and run on the GTK platform on Mac OS X 10.10. I have succeeded in building it, but I get a crash in WebProcess when running MiniBrowser that I can&apos;t figure out.

See https://github.com/ptomato/gtk-osx-build/blob/6eb49c9f56dc5f63adad33c751ae6d0e16b2ae46/modulesets-stable/gtk-osx-unsupported.modules#L233 for a list of the patches I am building with and https://github.com/ptomato/gtk-osx-build/tree/6eb49c9f56dc5f63adad33c751ae6d0e16b2ae46/patches for where those patches are stored. (I&apos;ll be filing bugs for each of those patches when I can get this to work.)

Here&apos;s the backtrace from WebProcess:

Exception Type:        EXC_BAD_ACCESS (SIGSEGV)
Exception Codes:       KERN_INVALID_ADDRESS at 0x0000000000000008

Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0   libwebkit2gtk-4.0.37.dylib      0x000000011f77945c IPC::Connection::isValid() const + 12
1   libwebkit2gtk-4.0.37.dylib      0x000000011f769e5a IPC::Connection::sendMessage(std::__1::unique_ptr&lt;IPC::MessageEncoder, std::__1::default_delete&lt;IPC::MessageEncoder&gt; &gt;, unsigned int) + 58
2   libwebkit2gtk-4.0.37.dylib      0x000000011fabcf8c WebKit::InjectedBundle::postMessage(WTF::String const&amp;, API::Object*) + 636
3   libwebkit2gtk-4.0.37.dylib      0x000000011fd7ff4e didInitiateLoadForResource(OpaqueWKBundlePage const*, OpaqueWKBundleFrame const*, unsigned long long, OpaqueWKURLRequest const*, bool, void const*) + 702
4   libwebkit2gtk-4.0.37.dylib      0x000000010f9c263c WebKit::InjectedBundlePageResourceLoadClient::didInitiateLoadForResource(WebKit::WebPage*, WebKit::WebFrame*, unsigned long long, WebCore::ResourceRequest const&amp;, bool) + 204
5   libwebkit2gtk-4.0.37.dylib      0x000000010faa9ed6 WebKit::WebFrameLoaderClient::assignIdentifierToInitialRequest(unsigned long, WebCore::DocumentLoader*, WebCore::ResourceRequest const&amp;) + 166
6   libwebkit2gtk-4.0.37.dylib      0x0000000110843ed8 WebCore::ResourceLoadNotifier::assignIdentifierToInitialRequest(unsigned long, WebCore::DocumentLoader*, WebCore::ResourceRequest const&amp;) + 88
7   libwebkit2gtk-4.0.37.dylib      0x000000011084ef7b WebCore::ResourceLoader::willSendRequest(WebCore::ResourceRequest&amp;, WebCore::ResourceResponse const&amp;) + 395
8   libwebkit2gtk-4.0.37.dylib      0x000000011085530d WebCore::SubresourceLoader::willSendRequest(WebCore::ResourceRequest&amp;, WebCore::ResourceResponse const&amp;) + 1101
9   libwebkit2gtk-4.0.37.dylib      0x000000011084e2b6 WebCore::ResourceLoader::init(WebCore::ResourceRequest const&amp;) + 1142
10  libwebkit2gtk-4.0.37.dylib      0x0000000110854da7 WebCore::SubresourceLoader::init(WebCore::ResourceRequest const&amp;) + 39
11  libwebkit2gtk-4.0.37.dylib      0x0000000110854cca WebCore::SubresourceLoader::create(WebCore::Frame*, WebCore::CachedResource*, WebCore::ResourceRequest const&amp;, WebCore::ResourceLoaderOptions const&amp;) + 186
12  libwebkit2gtk-4.0.37.dylib      0x0000000110844904 WebCore::ResourceLoadScheduler::scheduleSubresourceLoad(WebCore::Frame*, WebCore::CachedResource*, WebCore::ResourceRequest const&amp;, WebCore::ResourceLoaderOptions const&amp;) + 84
13  libwebkit2gtk-4.0.37.dylib      0x00000001108d1c39 WebCore::CachedResource::load(WebCore::CachedResourceLoader*, WebCore::ResourceLoaderOptions const&amp;) + 2153
14  libwebkit2gtk-4.0.37.dylib      0x00000001108e25ee WebCore::CachedResourceLoader::requestResource(WebCore::CachedResource::Type, WebCore::CachedResourceRequest&amp;) + 2766
15  libwebkit2gtk-4.0.37.dylib      0x00000001108e3250 WebCore::CachedResourceLoader::requestMainResource(WebCore::CachedResourceRequest&amp;) + 64
16  libwebkit2gtk-4.0.37.dylib      0x00000001107c69f1 WebCore::DocumentLoader::startLoadingMainResource() + 1521
17  libwebkit2gtk-4.0.37.dylib      0x00000001107fa3d9 WebCore::FrameLoader::continueLoadAfterWillSubmitForm() + 185
18  libwebkit2gtk-4.0.37.dylib      0x00000001107f54ac WebCore::FrameLoader::continueLoadAfterNavigationPolicy(WebCore::ResourceRequest const&amp;, WTF::PassRefPtr&lt;WebCore::FormState&gt;, bool, WebCore::AllowNavigationToInvalidURL) + 1068
19  libwebkit2gtk-4.0.37.dylib      0x0000000110803631 WebCore::FrameLoader::loadWithDocumentLoader(WebCore::DocumentLoader*, WebCore::FrameLoadType, WTF::PassRefPtr&lt;WebCore::FormState&gt;, WebCore::AllowNavigationToInvalidURL)::$_4::operator()(WebCore::ResourceRequest const&amp;, WTF::PassRefPtr&lt;WebCore::FormState&gt;, bool) const + 97
20  libwebkit2gtk-4.0.37.dylib      0x000000011080350b std::__1::__function::__func&lt;WebCore::FrameLoader::loadWithDocumentLoader(WebCore::DocumentLoader*, WebCore::FrameLoadType, WTF::PassRefPtr&lt;WebCore::FormState&gt;, WebCore::AllowNavigationToInvalidURL)::$_4, std::__1::allocator&lt;WebCore::FrameLoader::loadWithDocumentLoader(WebCore::DocumentLoader*, WebCore::FrameLoadType, WTF::PassRefPtr&lt;WebCore::FormState&gt;, WebCore::AllowNavigationToInvalidURL)::$_4&gt;, void (WebCore::ResourceRequest const&amp;, WTF::PassRefPtr&lt;WebCore::FormState&gt;, bool)&gt;::operator()(WebCore::ResourceRequest const&amp;, WTF::PassRefPtr&lt;WebCore::FormState&gt;&amp;&amp;, bool&amp;&amp;) + 203
21  libwebkit2gtk-4.0.37.dylib      0x000000011083b8ea std::__1::function&lt;void (WebCore::ResourceRequest const&amp;, WTF::PassRefPtr&lt;WebCore::FormState&gt;, bool)&gt;::operator()(WebCore::ResourceRequest const&amp;, WTF::PassRefPtr&lt;WebCore::FormState&gt;, bool) const + 218
22  libwebkit2gtk-4.0.37.dylib      0x0000000110835974 WebCore::PolicyCallback::call(bool) + 148
23  libwebkit2gtk-4.0.37.dylib      0x0000000110837586 WebCore::PolicyChecker::continueAfterNavigationPolicy(WebCore::PolicyAction) + 1062
24  libwebkit2gtk-4.0.37.dylib      0x000000011083b3fe WebCore::PolicyChecker::checkNavigationPolicy(WebCore::ResourceRequest const&amp;, WebCore::DocumentLoader*, WTF::PassRefPtr&lt;WebCore::FormState&gt;, std::__1::function&lt;void (WebCore::ResourceRequest const&amp;, WTF::PassRefPtr&lt;WebCore::FormState&gt;, bool)&gt;)::$_0::operator()(WebCore::PolicyAction) const + 30
25  libwebkit2gtk-4.0.37.dylib      0x000000011083b33e std::__1::__function::__func&lt;WebCore::PolicyChecker::checkNavigationPolicy(WebCore::ResourceRequest const&amp;, WebCore::DocumentLoader*, WTF::PassRefPtr&lt;WebCore::FormState&gt;, std::__1::function&lt;void (WebCore::ResourceRequest const&amp;, WTF::PassRefPtr&lt;WebCore::FormState&gt;, bool)&gt;)::$_0, std::__1::allocator&lt;WebCore::PolicyChecker::checkNavigationPolicy(WebCore::ResourceRequest const&amp;, WebCore::DocumentLoader*, WTF::PassRefPtr&lt;WebCore::FormState&gt;, std::__1::function&lt;void (WebCore::ResourceRequest const&amp;, WTF::PassRefPtr&lt;WebCore::FormState&gt;, bool)&gt;)::$_0&gt;, void (WebCore::PolicyAction)&gt;::operator()(WebCore::PolicyAction&amp;&amp;) + 94
26  libwebkit2gtk-4.0.37.dylib      0x000000010fab356a std::__1::function&lt;void (WebCore::PolicyAction)&gt;::operator()(WebCore::PolicyAction) const + 170
27  libwebkit2gtk-4.0.37.dylib      0x000000010fb07c3c WebKit::WebFrame::didReceivePolicyDecision(unsigned long long, WebCore::PolicyAction, unsigned long long, unsigned long long) + 428
28  libwebkit2gtk-4.0.37.dylib      0x000000010faad9ca WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction(WebCore::NavigationAction const&amp;, WebCore::ResourceRequest const&amp;, WTF::PassRefPtr&lt;WebCore::FormState&gt;, std::__1::function&lt;void (WebCore::PolicyAction)&gt;) + 2618
29  libwebkit2gtk-4.0.37.dylib      0x0000000110836cfe WebCore::PolicyChecker::checkNavigationPolicy(WebCore::ResourceRequest const&amp;, WebCore::DocumentLoader*, WTF::PassRefPtr&lt;WebCore::FormState&gt;, std::__1::function&lt;void (WebCore::ResourceRequest const&amp;, WTF::PassRefPtr&lt;WebCore::FormState&gt;, bool)&gt;) + 1758
30  libwebkit2gtk-4.0.37.dylib      0x00000001107f4cb5 WebCore::FrameLoader::loadWithDocumentLoader(WebCore::DocumentLoader*, WebCore::FrameLoadType, WTF::PassRefPtr&lt;WebCore::FormState&gt;, WebCore::AllowNavigationToInvalidURL) + 2741
31  libwebkit2gtk-4.0.37.dylib      0x00000001107f10c5 WebCore::FrameLoader::load(WebCore::DocumentLoader*) + 437
32  libwebkit2gtk-4.0.37.dylib      0x00000001107f4111 WebCore::FrameLoader::load(WebCore::FrameLoadRequest const&amp;) + 1313
33  libwebkit2gtk-4.0.37.dylib      0x0000000111078e03 WebCore::UserInputBridge::loadRequest(WebCore::FrameLoadRequest const&amp;, WebCore::InputSource) + 51
34  libwebkit2gtk-4.0.37.dylib      0x000000010fb2350c WebKit::WebPage::loadRequest(unsigned long long, WebCore::ResourceRequest const&amp;, WebKit::SandboxExtension::Handle const&amp;, IPC::MessageDecoder&amp;) + 620
35  libwebkit2gtk-4.0.37.dylib      0x000000010fd2083d void IPC::callMemberFunctionImpl&lt;WebKit::WebPage, void (WebKit::WebPage::*)(unsigned long long, WebCore::ResourceRequest const&amp;, WebKit::SandboxExtension::Handle const&amp;, IPC::MessageDecoder&amp;), std::__1::tuple&lt;unsigned long long, WebCore::ResourceRequest, WebKit::SandboxExtension::Handle&gt;, 0ul, 1ul, 2ul&gt;(WebKit::WebPage*, void (WebKit::WebPage::*)(unsigned long long, WebCore::ResourceRequest const&amp;, WebKit::SandboxExtension::Handle const&amp;, IPC::MessageDecoder&amp;), IPC::MessageDecoder&amp;, std::__1::tuple&lt;unsigned long long, WebCore::ResourceRequest, WebKit::SandboxExtension::Handle&gt;&amp;&amp;, std::index_sequence&lt;0ul, 1ul, 2ul&gt;) + 221
36  libwebkit2gtk-4.0.37.dylib      0x000000010fd20690 void IPC::callMemberFunction&lt;WebKit::WebPage, void (WebKit::WebPage::*)(unsigned long long, WebCore::ResourceRequest const&amp;, WebKit::SandboxExtension::Handle const&amp;, IPC::MessageDecoder&amp;), std::__1::tuple&lt;unsigned long long, WebCore::ResourceRequest, WebKit::SandboxExtension::Handle&gt;, std::make_index_sequence&lt;3ul&gt; &gt;(std::__1::tuple&lt;unsigned long long, WebCore::ResourceRequest, WebKit::SandboxExtension::Handle&gt;&amp;&amp;, IPC::MessageDecoder&amp;, WebKit::WebPage*, void (WebKit::WebPage::*)(unsigned long long, WebCore::ResourceRequest const&amp;, WebKit::SandboxExtension::Handle const&amp;, IPC::MessageDecoder&amp;)) + 96
37  libwebkit2gtk-4.0.37.dylib      0x000000010fd11d7b void IPC::handleMessageVariadic&lt;Messages::WebPage::LoadRequest, WebKit::WebPage, void (WebKit::WebPage::*)(unsigned long long, WebCore::ResourceRequest const&amp;, WebKit::SandboxExtension::Handle const&amp;, IPC::MessageDecoder&amp;)&gt;(IPC::MessageDecoder&amp;, WebKit::WebPage*, void (WebKit::WebPage::*)(unsigned long long, WebCore::ResourceRequest const&amp;, WebKit::SandboxExtension::Handle const&amp;, IPC::MessageDecoder&amp;)) + 459
38  libwebkit2gtk-4.0.37.dylib      0x000000010fd0d272 WebKit::WebPage::didReceiveWebPageMessage(IPC::Connection*, IPC::MessageDecoder&amp;) + 2914
39  libwebkit2gtk-4.0.37.dylib      0x000000010fb2d65c WebKit::WebPage::didReceiveMessage(IPC::Connection*, IPC::MessageDecoder&amp;) + 236
40  libwebkit2gtk-4.0.37.dylib      0x000000010fb2d6a7 non-virtual thunk to WebKit::WebPage::didReceiveMessage(IPC::Connection*, IPC::MessageDecoder&amp;) + 55
41  libwebkit2gtk-4.0.37.dylib      0x000000010f679b6d IPC::MessageReceiverMap::dispatchMessage(IPC::Connection*, IPC::MessageDecoder&amp;) + 461
42  libwebkit2gtk-4.0.37.dylib      0x000000010f96d1f7 WebKit::WebProcess::didReceiveMessage(IPC::Connection*, IPC::MessageDecoder&amp;) + 55
43  libwebkit2gtk-4.0.37.dylib      0x000000010f65a563 IPC::Connection::dispatchMessage(IPC::MessageDecoder&amp;) + 51
44  libwebkit2gtk-4.0.37.dylib      0x000000010f650880 IPC::Connection::dispatchMessage(std::__1::unique_ptr&lt;IPC::MessageDecoder, std::__1::default_delete&lt;IPC::MessageDecoder&gt; &gt;) + 368
45  libwebkit2gtk-4.0.37.dylib      0x000000010f65a10c IPC::Connection::dispatchOneMessage() + 1436
46  libwebkit2gtk-4.0.37.dylib      0x000000010f66c952 WTF::FunctionWrapper&lt;void (IPC::Connection::*)()&gt;::operator()(IPC::Connection*) + 114
47  libwebkit2gtk-4.0.37.dylib      0x000000010f66c8d5 WTF::BoundFunctionImpl&lt;WTF::FunctionWrapper&lt;void (IPC::Connection::*)()&gt;, void (IPC::Connection*)&gt;::operator()() + 53
48  libwebkit2gtk-4.0.37.dylib      0x000000010f673822 WTF::Function&lt;void ()&gt;::operator()() const + 114
49  libwebkit2gtk-4.0.37.dylib      0x000000010f67370c std::__1::__function::__func&lt;WTF::Function&lt;void ()&gt;, std::__1::allocator&lt;WTF::Function&lt;void ()&gt; &gt;, void ()&gt;::operator()() + 60
50  libwebkit2gtk-4.0.37.dylib      0x000000010f63769d std::__1::function&lt;void ()&gt;::operator()() const + 141
51  libwebkit2gtk-4.0.37.dylib      0x00000001119de37a WTF::RunLoop::performWork() + 698
52  libwebkit2gtk-4.0.37.dylib      0x00000001119e486d WTF::RunLoop::wakeUp()::$_0::operator()() const + 29
53  libwebkit2gtk-4.0.37.dylib      0x00000001119e47ac std::__1::__function::__func&lt;WTF::RunLoop::wakeUp()::$_0, std::__1::allocator&lt;WTF::RunLoop::wakeUp()::$_0&gt;, void ()&gt;::operator()() + 60
54  libjavascriptcoregtk-4.0.18.dylib 0x0000000115fdc16d std::__1::function&lt;void ()&gt;::operator()() const + 141
55  libjavascriptcoregtk-4.0.18.dylib 0x000000011602d3ca WTF::GMainLoopSource::voidCallback() + 186
56  libjavascriptcoregtk-4.0.18.dylib 0x000000011602a87e WTF::GMainLoopSource::voidSourceCallback(WTF::GMainLoopSource*) + 30
57  libglib-2.0.0.dylib             0x0000000117f0ad56 g_idle_dispatch + 70 (gmain.c:5367)
58  libglib-2.0.0.dylib             0x0000000117f0fa74 g_main_dispatch + 452 (gmain.c:3111)
59  libglib-2.0.0.dylib             0x0000000117f0f893 g_main_context_dispatch + 51 (gmain.c:3713)
60  libglib-2.0.0.dylib             0x0000000117f0fe70 g_main_context_iterate + 480 (gmain.c:3783)
61  libglib-2.0.0.dylib             0x0000000117f10382 g_main_loop_run + 578 (gmain.c:3975)
62  libwebkit2gtk-4.0.37.dylib      0x00000001119e144b WTF::RunLoop::run() + 59
63  libwebkit2gtk-4.0.37.dylib      0x000000010fc8854d int WebKit::ChildProcessMain&lt;WebKit::WebProcess, WebKit::WebProcessMain&gt;(int, char**) + 253
64  libwebkit2gtk-4.0.37.dylib      0x000000010fc883db WebProcessMainUnix + 27
65  WebKitWebProcess                0x000000010f607ed3 main + 67
66  WebKitWebProcess                0x000000010f607e84 start + 52

I&apos;m not sure what can be trying to access memory address 0x8 in IPC::Connection::isValid(), since that method consists entirely of &quot;return m_client&quot;. Any help in debugging would be appreciated.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1091263</commentid>
    <comment_count>1</comment_count>
    <who name="Philip Chimento">philip.chimento</who>
    <bug_when>2015-05-03 15:15:38 -0700</bug_when>
    <thetext>Whatever the cause of this was, it seems to have been fixed in 2.8.0.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>