Skip to content
  • jsbell@chromium.org's avatar
    [Chromium] IndexedDB: Assert/crash in indexing layout tests in content_shell · c89a69f5
    jsbell@chromium.org authored
    https://bugs.webkit.org/show_bug.cgi?id=103562
    
    Reviewed by Tony Chang.
    
    Source/WebCore:
    
    In multi-process ports, an commit request or setIndexesReady request may arrive from the
    front-end after the back-end has already aborted. Don't freak out if those occur.
    
    Tests: storage/indexeddb/index-population.html
           storage/indexeddb/lazy-index-population.html
           storage/indexeddb/transaction-error.html
    
    * Modules/indexeddb/IDBObjectStoreBackendImpl.cpp:
    (WebCore::IDBObjectStoreBackendImpl::setIndexKeys): Ensure transaction hasn't finished before continuing.
    (WebCore::IDBObjectStoreBackendImpl::setIndexesReady): Ditto.
    * Modules/indexeddb/IDBTransactionBackendImpl.cpp:
    (WebCore::IDBTransactionBackendImpl::commit): Ignore a commit request if already aborted.
    
    LayoutTests:
    
    Fix an expectation glitch that may arise in multi-process ports (an error on
    the open request may arrive before logging has stopped; safe to ignore it).
    
    * storage/indexeddb/resources/transaction-error.js:
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@136084 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    c89a69f5