Changeset 245463 in webkit
- Timestamp:
- May 17, 2019, 8:20:22 AM (7 years ago)
- Location:
- branches/safari-607-branch/Source/WebCore
- Files:
-
- 3 edited
-
ChangeLog (modified) (1 diff)
-
Modules/mediastream/MediaStreamTrack.cpp (modified) (1 diff)
-
html/HTMLMediaElement.h (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
branches/safari-607-branch/Source/WebCore/ChangeLog
r245397 r245463 1 2019-05-17 Alan Coon <alancoon@apple.com> 2 3 Apply patch. rdar://problem/50871594 4 5 2019-05-17 youenn fablet <youennf@gmail.com> 6 7 REGRESSION(245357): Netflix, Hulu, Amazon, YouTube Rental video playback crash at com.apple.WebCore: WebCore::WebKitMediaKeys::setMediaElement 8 rdar://problem/50871594 9 10 Do not cast WeakPtr<MediaProducer> into WeakPtr<HTMLMediaElement>. 11 Instead, make HTMLMediaElement again a CanMakeWeakPtr<HTMLMediaElement> 12 and directly create WeakPtr<HTMLMediaElement>. 13 14 For MediaStreamTrack, rely on weakThis to know whether 'this' is still alive and use 'this' directly. 15 16 Manually tested. 17 18 * Modules/mediastream/MediaStreamTrack.cpp: 19 (WebCore::MediaStreamTrack::applyConstraints): 20 * html/HTMLMediaElement.h: 21 1 22 2019-05-16 Kocsen Chung <kocsen_chung@apple.com> 2 23 -
branches/safari-607-branch/Source/WebCore/Modules/mediastream/MediaStreamTrack.cpp
r239461 r245463 332 332 333 333 auto weakThis = makeWeakPtr(*this); 334 auto failureHandler = [weakThis ] (const String& failedConstraint, const String& message) {335 if (!weakThis || ! weakThis->m_promise)334 auto failureHandler = [weakThis, this] (const String& failedConstraint, const String& message) { 335 if (!weakThis || !m_promise) 336 336 return; 337 weakThis->m_promise->rejectType<IDLInterface<OverconstrainedError>>(OverconstrainedError::create(failedConstraint, message).get());337 m_promise->rejectType<IDLInterface<OverconstrainedError>>(OverconstrainedError::create(failedConstraint, message).get()); 338 338 }; 339 auto successHandler = [weakThis, constraints] () {340 if (!weakThis || ! weakThis->m_promise)339 auto successHandler = [weakThis, this, constraints] () { 340 if (!weakThis || !m_promise) 341 341 return; 342 weakThis->m_promise->resolve();343 weakThis->m_constraints = constraints.valueOr(MediaTrackConstraints { });342 m_promise->resolve(); 343 m_constraints = constraints.valueOr(MediaTrackConstraints { }); 344 344 }; 345 345 m_private->applyConstraints(createMediaConstraints(constraints), WTFMove(successHandler), WTFMove(failureHandler)); -
branches/safari-607-branch/Source/WebCore/html/HTMLMediaElement.h
r245357 r245463 127 127 , public ActiveDOMObject 128 128 , public MediaControllerInterface 129 , public CanMakeWeakPtr<HTMLMediaElement> 129 130 , public PlatformMediaSessionClient 130 131 , private MediaCanStartListener 131 132 , private MediaPlayerClient 132 , p ublicMediaProducer133 , private MediaProducer 133 134 , private VisibilityChangeClient 134 135 , private ApplicationStateChangeListener … … 187 188 MediaPlayerEnums::VideoGravity videoFullscreenGravity() const { return m_videoFullscreenGravity; } 188 189 #endif 190 191 using CanMakeWeakPtr<HTMLMediaElement>::weakPtrFactory; 189 192 190 193 void scheduleCheckPlaybackTargetCompatability();
Note:
See TracChangeset
for help on using the changeset viewer.