[webkit-changes] [WebKit/WebKit] 7fcc16: REGRESSION (270237 at main): ASSERTION FAILED: !m_del...

aestes noreply at github.com
Thu Nov 9 23:41:27 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 7fcc1635bd52135380e4d5aa62fdf936facf1c03
      https://github.com/WebKit/WebKit/commit/7fcc1635bd52135380e4d5aa62fdf936facf1c03
  Author: Andy Estes <aestes at apple.com>
  Date:   2023-11-09 (Thu, 09 Nov 2023)

  Changed paths:
    M Source/WebCore/platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm

  Log Message:
  -----------
  REGRESSION (270237 at main): ASSERTION FAILED: !m_deletionHasBegun in RefCountedBase::hasOneRef() when running media/media-source/mock-managedmse-bufferedchange.html
https://bugs.webkit.org/show_bug.cgi?id=264535
rdar://problem/118206047

Reviewed by Jer Noble.

media/media-source/mock-managedmse-bufferedchange.html (and others) crash in Debug builds when
HAVE(AVSAMPLEBUFFERDISPLAYLAYER_READYFORDISPLAY) is enabled due to an attempt to ref() an instance
of SourceBufferPrivateAVFObjC in its destructor.

Addressed this by partially reverting 270237 at main to not create RefPtrs when getting
WebAVSampleBufferListener's _parent WeakPtr.

No new tests; covered by existing tests.

* Source/WebCore/platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:
(-[WebAVSampleBufferListener observeValueForKeyPath:ofObject:change:context:]):
(-[WebAVSampleBufferListener layerFailedToDecode:]):
(-[WebAVSampleBufferListener layerRequiresFlushToResumeDecodingChanged:]):
(-[WebAVSampleBufferListener layerReadyForDisplayChanged:]):
(-[WebAVSampleBufferListener audioRendererWasAutomaticallyFlushed:]):

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




More information about the webkit-changes mailing list