<?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>146098</bug_id>
          
          <creation_ts>2015-06-17 21:12:28 -0700</creation_ts>
          <short_desc>Assertion failure (m_eventListeners.contains(std::make_pair(&amp;connection, storageMapID))) in StorageArea::removeListener after closing a Safari tab</short_desc>
          <delta_ts>2015-06-22 08:04:10 -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>WebKit2</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter>mitz</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>andersca</cc>
    
    <cc>beidson</cc>
    
    <cc>mcatanzaro</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1102797</commentid>
    <comment_count>0</comment_count>
    <who name="">mitz</who>
    <bug_when>2015-06-17 21:12:28 -0700</bug_when>
    <thetext>After closing a Safari tab, the assertion in StorageArea::removeListener failed with this backtrace:

#0	0x000000010280f3ba in WTFCrash at Source/WTF/wtf/Assertions.cpp:321
#1	0x0000000104b39c77 in WebKit::StorageManager::StorageArea::removeListener(IPC::Connection&amp;, unsigned long long) at Source/WebKit2/UIProcess/Storage/StorageManager.cpp:202
#2	0x0000000104b53ce2 in WebKit::StorageManager::processDidCloseConnection(WebKit::WebProcessProxy&amp;, IPC::Connection&amp;)::$_4::operator()() const at Source/WebKit2/UIProcess/Storage/StorageManager.cpp:547
#3	0x0000000104b53b9c in decltype(std::__1::forward&lt;WebKit::StorageManager::processDidCloseConnection(WebKit::WebProcessProxy&amp;, IPC::Connection&amp;)::$_4&amp;&gt;(fp)(std::__1::forward&lt;&gt;(fp0))) std::__1::__invoke&lt;WebKit::StorageManager::processDidCloseConnection(WebKit::WebProcessProxy&amp;, IPC::Connection&amp;)::$_4&amp;&gt;(WebKit::StorageManager::processDidCloseConnection(WebKit::WebProcessProxy&amp;, IPC::Connection&amp;)::$_4&amp;&amp;&amp;) [inlined] at /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.10.xctoolchain/usr/bin/../include/c++/v1/__functional_base:413
#4	0x0000000104b53b8b in std::__1::__function::__func&lt;WebKit::StorageManager::processDidCloseConnection(WebKit::WebProcessProxy&amp;, IPC::Connection&amp;)::$_4, std::__1::allocator&lt;WebKit::StorageManager::processDidCloseConnection(WebKit::WebProcessProxy&amp;, IPC::Connection&amp;)::$_4&gt;, void ()&gt;::operator()() at /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.10.xctoolchain/usr/bin/../include/c++/v1/functional:1370
#5	0x000000010231de0a in std::__1::function&lt;void ()&gt;::operator()() const at /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.10.xctoolchain/usr/bin/../include/c++/v1/functional:1755
#6	0x000000010282b229 in ___ZN3WTF9WorkQueue8dispatchENSt3__18functionIFvvEEE_block_invoke at Source/WTF/wtf/cocoa/WorkQueueCocoa.cpp:35

&amp;connection was 0x000000011570ba40, m_eventListeners contained a single pair:

  first = {
    m_ptr = 0x000000011570ba40
  }
  second = 3

however, storageMapID was 4, not 3.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1103838</commentid>
    <comment_count>1</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2015-06-22 08:04:10 -0700</bug_when>
    <thetext>You can reproduce this on this page: http://rt.com/usa/268756-jersey-city-party-shooting/

When I use the web inspector to view storage for this site, I see these warnings:

ERROR: Unhandled web process message &apos;StorageAreaMap:DispatchStorageEvent&apos;
../../Source/WebKit2/WebProcess/WebProcess.cpp(641) : virtual void WebKit::WebProcess::didReceiveMessage(IPC::Connection &amp;, IPC::MessageDecoder &amp;)
ERROR: Unhandled web process message &apos;StorageAreaMap:DispatchStorageEvent&apos;
../../Source/WebKit2/WebProcess/WebProcess.cpp(641) : virtual void WebKit::WebProcess::didReceiveMessage(IPC::Connection &amp;, IPC::MessageDecoder &amp;)</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>