[Webkit-unassigned] [Bug 37120] New: ASSERT close()ing the same StorageAreaImpl twice when using multiple PageGroups

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Mon Apr 5 15:40:39 PDT 2010


https://bugs.webkit.org/show_bug.cgi?id=37120

           Summary: ASSERT close()ing the same StorageAreaImpl twice when
                    using multiple PageGroups
           Product: WebKit
           Version: 528+ (Nightly build)
          Platform: All
        OS/Version: All
            Status: NEW
          Keywords: InRadar
          Severity: Normal
          Priority: P2
         Component: WebCore Misc.
        AssignedTo: webkit-unassigned at lists.webkit.org
        ReportedBy: beidson at apple.com


ASSERT close()ing the same StorageAreaImpl twice when using multiple PageGroups

If you use multiple PageGroups and point them both to the same path for
LocalStorage, you can get an ASSERT closing the same storage area twice:
    ASSERT(!m_isShutdown);
#0    0x102938f3e in WebCore::StorageNamespaceImpl::close at
StorageNamespaceImpl.cpp:122
#1    0x102740fc5 in WebCore::PageGroup::closeLocalStorage at PageGroup.cpp:106
#2    0x101adf881 in +[WebView _applicationWillTerminate] at WebView.mm:2482

I've traced through what happens when you *do* try to close it twice, and it
appears there's no ill effects.  But it actually ends up trying to do
synchronous I/O just to support the second close, which is a waste.

The ASSERT is invalid - we thought this case shouldn't happen, but it clearly
can.  It should just be an early return instead.

In radar as <rdar://problem/7828420>

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list