[webkit-changes] [WebKit/WebKit] 9d2c7a: Cherry-pick 259206 at main (83b35618436d). https://bu...

Ryosuke Niwa noreply at github.com
Mon Jan 30 16:00:02 PST 2023


  Branch: refs/heads/webkitglib/2.38
  Home:   https://github.com/WebKit/WebKit
  Commit: 9d2c7a503248b7764eefbeeb201d772ce2749ad4
      https://github.com/WebKit/WebKit/commit/9d2c7a503248b7764eefbeeb201d772ce2749ad4
  Author: Xabier Rodriguez-Calvar <calvaris at igalia.com>
  Date:   2023-01-31 (Tue, 31 Jan 2023)

  Changed paths:
    M Source/WebCore/platform/graphics/gstreamer/eme/WebKitCommonEncryptionDecryptorGStreamer.cpp

  Log Message:
  -----------
  Cherry-pick 259206 at main (83b35618436d). https://bugs.webkit.org/show_bug.cgi?id=250897

    [EME][GStreamer] Allow CBCS content
    https://bugs.webkit.org/show_bug.cgi?id=250897

    Reviewed by Philippe Normand.

    Remove check for CBCS content that threw an error.

    * Source/WebCore/platform/graphics/gstreamer/eme/WebKitCommonEncryptionDecryptorGStreamer.cpp:
    (transformInPlace):

    Canonical link: https://commits.webkit.org/259206@main


  Commit: dd11ddb4a9c860483e05689aefc88cc435c2a32d
      https://github.com/WebKit/WebKit/commit/dd11ddb4a9c860483e05689aefc88cc435c2a32d
  Author: Philippe Normand <philn at igalia.com>
  Date:   2023-01-31 (Tue, 31 Jan 2023)

  Changed paths:
    M Source/WebCore/platform/graphics/gstreamer/GStreamerRegistryScanner.cpp
    M Source/WebCore/platform/graphics/gstreamer/GStreamerRegistryScanner.h

  Log Message:
  -----------
  Cherry-pick 259208 at main (1548006115c7). https://bugs.webkit.org/show_bug.cgi?id=250933

    [GStreamer] Expose API for element lookup based on input caps
    https://bugs.webkit.org/show_bug.cgi?id=250933

    Reviewed by Xabier Rodriguez-Calvar.

    We have API for this already but it expects the caps as a parseable string, so that was refactored
    to also accept an already parsed GstCaps.

    * Source/WebCore/platform/graphics/gstreamer/GStreamerRegistryScanner.cpp:
    (WebCore::GStreamerRegistryScanner::ElementFactories::hasElementForMediaType const):
    (WebCore::GStreamerRegistryScanner::ElementFactories::hasElementForCaps const):
    (WebCore::GStreamerRegistryScanner::areCapsSupported):
    * Source/WebCore/platform/graphics/gstreamer/GStreamerRegistryScanner.h:

    Canonical link: https://commits.webkit.org/259208@main


  Commit: 498459ffd5f4125c84f003440620f79f586f6c57
      https://github.com/WebKit/WebKit/commit/498459ffd5f4125c84f003440620f79f586f6c57
  Author: Sihui Liu <sihui_liu at apple.com>
  Date:   2023-01-31 (Tue, 31 Jan 2023)

  Changed paths:
    A LayoutTests/storage/indexeddb/modern/objectstore-add-delete-abort-expected.txt
    A LayoutTests/storage/indexeddb/modern/objectstore-add-delete-abort-private-expected.txt
    A LayoutTests/storage/indexeddb/modern/objectstore-add-delete-abort-private.html
    A LayoutTests/storage/indexeddb/modern/objectstore-add-delete-abort.html
    M LayoutTests/storage/indexeddb/modern/objectstore-rename-abort-expected.txt
    M LayoutTests/storage/indexeddb/modern/objectstore-rename-abort-private-expected.txt
    A LayoutTests/storage/indexeddb/modern/resources/objectstore-add-delete-abort.js
    M LayoutTests/storage/indexeddb/modern/resources/objectstore-rename-abort.js
    M Source/WebCore/Modules/indexeddb/server/MemoryBackingStoreTransaction.cpp

  Log Message:
  -----------
  Cherry-pick 259215 at main (0a51ad5e5ed5). https://bugs.webkit.org/show_bug.cgi?id=250908

    ASSERTION FAILED: !m_objectStoresByIdentifier.contains(objectStore->info().identifier()) in MemoryIDBBackingStore.cpp
    https://bugs.webkit.org/show_bug.cgi?id=250908
    rdar://104163599

    Reviewed by Chris Dumez.

    m_deletedObjectStores in MemoryBackingStoreTransaction is used to track deleted object stores that need to be added
    back to database if transaction is aborted, so it should not contain object stores created in the transaction. If an
    object store is created and deleted in the same transaction, database should not have information about the object store
    after transaction finishes.

    * LayoutTests/storage/indexeddb/modern/objectstore-add-delete-abort-expected.txt: Added.
    * LayoutTests/storage/indexeddb/modern/objectstore-add-delete-abort-private-expected.txt: Added.
    * LayoutTests/storage/indexeddb/modern/objectstore-add-delete-abort-private.html: Added.
    * LayoutTests/storage/indexeddb/modern/objectstore-add-delete-abort.html: Added.
    * LayoutTests/storage/indexeddb/modern/objectstore-rename-abort-expected.txt:
    * LayoutTests/storage/indexeddb/modern/objectstore-rename-abort-private-expected.txt:
    * LayoutTests/storage/indexeddb/modern/resources/objectstore-add-delete-abort.js: Copied from LayoutTests/storage/indexeddb/modern/resources/objectstore-rename-abort.js.
    (openDatabase):
    (onDatabaseUpgradeNeeded):
    (onTransactionAbort):
    * LayoutTests/storage/indexeddb/modern/resources/objectstore-rename-abort.js:
    (onDatabaseUpgradeNeeded):
    * Source/WebCore/Modules/indexeddb/server/MemoryBackingStoreTransaction.cpp:
    (WebCore::IDBServer::MemoryBackingStoreTransaction::objectStoreDeleted):

    Canonical link: https://commits.webkit.org/259215@main


  Commit: ac8af3376b4510d03d92d348b57f7d50323f850f
      https://github.com/WebKit/WebKit/commit/ac8af3376b4510d03d92d348b57f7d50323f850f
  Author: Sihui Liu <sihui_liu at apple.com>
  Date:   2023-01-31 (Tue, 31 Jan 2023)

  Changed paths:
    M Source/WebCore/Modules/indexeddb/server/MemoryBackingStoreTransaction.cpp
    M Source/WebCore/Modules/indexeddb/server/MemoryIDBBackingStore.h

  Log Message:
  -----------
  Cherry-pick 259360 at main (35ff68953736). https://bugs.webkit.org/show_bug.cgi?id=251051

    REGRESSION(259215 at main): [ BigSur+ Debug ] storage/indexeddb/modern/deleteindex-4-private.html is a constant crash
    https://bugs.webkit.org/show_bug.cgi?id=251051
    rdar://104579643

    Reviewed by Chris Dumez.

    We should not restore indexes of object stores that do not exist after transaction abort, so this patch remove indexes
    of non-existent objects stores (object store created in the transaction) from m_deletedIndexes.

    * Source/WebCore/Modules/indexeddb/server/MemoryBackingStoreTransaction.cpp:
    (WebCore::IDBServer::MemoryBackingStoreTransaction::indexDeleted):
    (WebCore::IDBServer::MemoryBackingStoreTransaction::objectStoreDeleted):
    (WebCore::IDBServer::MemoryBackingStoreTransaction::abort):
    * Source/WebCore/Modules/indexeddb/server/MemoryIDBBackingStore.h:

    Canonical link: https://commits.webkit.org/259360@main


  Commit: 6230aba5675e705223c9501d7a8a45244fb8e60f
      https://github.com/WebKit/WebKit/commit/6230aba5675e705223c9501d7a8a45244fb8e60f
  Author: Ahmad Saleem <ahmad.saleem792+github at gmail.com>
  Date:   2023-01-31 (Tue, 31 Jan 2023)

  Changed paths:
    M Source/WebCore/page/EventHandler.cpp

  Log Message:
  -----------
  Cherry-pick 259288 at main (9a050efadba8). https://bugs.webkit.org/show_bug.cgi?id=250952

    Reset 'm_touchPressed' to false in EventHandler::clear()

    Reset 'm_touchPressed' to false in EventHandler::clear()
    https://bugs.webkit.org/show_bug.cgi?id=250952

    Reviewed by Aditya Keerthi.

    Merge - https://chromium.googlesource.com/chromium/blink/+/b7791c376d099dbb0ecebf51203af5b856afb7f6

    The member variable 'm_touchPressed' in EventHandler is true if there
    is at least one active touchpoint. This should be reset to false
    in EventHandler::clear(), otherwise mousemove events may be
    incorrectly treated.

    * Source/WebCore/page/EventHandler.cpp:
    (EventHandler::clear): Explicitly set 'm_touchPressed' to 'false'

    Canonical link: https://commits.webkit.org/259288@main


  Commit: a262586a75f53720b8f9a9335e9afeaf0c7878da
      https://github.com/WebKit/WebKit/commit/a262586a75f53720b8f9a9335e9afeaf0c7878da
  Author: Chris Dumez <cdumez at apple.com>
  Date:   2023-01-31 (Tue, 31 Jan 2023)

  Changed paths:
    A LayoutTests/fast/forms/datalist/datalist-idTargetChanged-crash-expected.txt
    A LayoutTests/fast/forms/datalist/datalist-idTargetChanged-crash.html
    M Source/WebCore/html/HTMLInputElement.cpp

  Log Message:
  -----------
  Cherry-pick 252432.806 at safari-7614-branch (a09205d980f6). https://bugs.webkit.org/show_bug.cgi?id=247592

    Assertion hit under IdTargetObserverRegistry::notifyObservers()
    https://bugs.webkit.org/show_bug.cgi?id=247592
    rdar://101454107

    Reviewed by Aditya Keerthi, Wenson Hsieh and Geoffrey Garen.

    ListAttributeTargetObserver::idTargetChanged() is not safe to re-enter. As a result,
    we have an assertion and a runtime check to protect against this. However, it was
    still possible to hit this assertion in debug.

    ListAttributeTargetObserver::idTargetChanged() would call
    TextFieldInputType::dataListMayHaveChanged() which could run script by calling
    createDataListDropdownIndicator(). The script could then change the datalist
    element's id, which would attempt to re-enter.

    This patch addresses the issue by calling dataListMayHaveChanged() asynchronously.

    * LayoutTests/fast/forms/datalist/datalist-idTargetChanged-crash-expected.txt: Added.
    * LayoutTests/fast/forms/datalist/datalist-idTargetChanged-crash.html: Added.
    * Source/WebCore/html/HTMLInputElement.cpp:
    (WebCore::ListAttributeTargetObserver::idTargetChanged):

    Canonical link: https://commits.webkit.org/252432.806@safari-7614-branch


  Commit: 33fc68e77ae87176dcc58d70f0c88e867c5ee1f4
      https://github.com/WebKit/WebKit/commit/33fc68e77ae87176dcc58d70f0c88e867c5ee1f4
  Author: Ryosuke Niwa <rniwa at webkit.org>
  Date:   2023-01-31 (Tue, 31 Jan 2023)

  Changed paths:
    A LayoutTests/editing/selection/modify-extend-iframe-orphan-expected.txt
    A LayoutTests/editing/selection/modify-extend-iframe-orphan.html
    M Source/WebCore/editing/FrameSelection.cpp

  Log Message:
  -----------
  Cherry-pick 252432.816 at safari-7614-branch (fa17c4664715). https://bugs.webkit.org/show_bug.cgi?id=247781

    ASSERTION FAILED: !document().selection().selection().isOrphan() in ContainerNode::removeNodeWithScriptAssertion
    https://bugs.webkit.org/show_bug.cgi?id=247781
    rdar://101497964

    Reviewed by Wenson Hsieh, Darin Adler and Geoffrey Garen.

    The bug was caused by VisibleSelection::setBase setting selection ends to point to nodes
    in a wrong document as a side effect of calling VisibleSelection::validate when m_anchor
    isn't cleared due to a node removal when live range selection is disabled.

    * LayoutTests/editing/selection/modify-extend-iframe-orphan-expected.txt: Added.
    * LayoutTests/editing/selection/modify-extend-iframe-orphan.html: Added.
    * Source/WebCore/editing/FrameSelection.cpp:
    (WebCore::selectionIsOrphanedOrBelongsToWrongDocument):
    (WebCore::FrameSelection::willBeModified):

    Canonical link: https://commits.webkit.org/252432.816@safari-7614-branch


Compare: https://github.com/WebKit/WebKit/compare/f87f765771f1...33fc68e77ae8


More information about the webkit-changes mailing list