Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 7fcc1635bd52135380e4d5aa62fdf936facf1c03
      
https://github.com/WebKit/WebKit/commit/7fcc1635bd52135380e4d5aa62fdf936facf1c03
  Author: Andy Estes <aes...@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@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@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


_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to