forked from mirrors/gecko-dev
		
	Bug 1918096 - Reject gUM/gDM request if video track ends before first frame. a=RyanVM
This case gets hit if the SCContentSharingPicker is cancelled by the user. Original Revision: https://phabricator.services.mozilla.com/D221854 Differential Revision: https://phabricator.services.mozilla.com/D232474
This commit is contained in:
		
							parent
							
								
									5d960a5dff
								
							
						
					
					
						commit
						a1ab9c47be
					
				
					 2 changed files with 11 additions and 1 deletions
				
			
		|  | @ -1769,7 +1769,16 @@ void GetUserMediaStreamTask::PrepareDOMStream() { | ||||||
|                       return DeviceListener::DeviceListenerPromise:: |                       return DeviceListener::DeviceListenerPromise:: | ||||||
|                           CreateAndResolve(true, __func__); |                           CreateAndResolve(true, __func__); | ||||||
|                     }, |                     }, | ||||||
|                     [] { |                     [](nsresult aError) { | ||||||
|  |                       MOZ_ASSERT(NS_FAILED(aError)); | ||||||
|  |                       if (aError == NS_ERROR_UNEXPECTED) { | ||||||
|  |                         return DeviceListener::DeviceListenerPromise:: | ||||||
|  |                             CreateAndReject( | ||||||
|  |                                 MakeRefPtr<MediaMgrError>( | ||||||
|  |                                     MediaMgrError::Name::NotAllowedError), | ||||||
|  |                                 __func__); | ||||||
|  |                       } | ||||||
|  |                       MOZ_ASSERT(aError == NS_ERROR_ABORT); | ||||||
|                       return DeviceListener::DeviceListenerPromise:: |                       return DeviceListener::DeviceListenerPromise:: | ||||||
|                           CreateAndReject(MakeRefPtr<MediaMgrError>( |                           CreateAndReject(MakeRefPtr<MediaMgrError>( | ||||||
|                                               MediaMgrError::Name::AbortError, |                                               MediaMgrError::Name::AbortError, | ||||||
|  |  | ||||||
|  | @ -393,6 +393,7 @@ const TrackingId& MediaEngineRemoteVideoSource::GetTrackingId() const { | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| void MediaEngineRemoteVideoSource::OnCaptureEnded() { | void MediaEngineRemoteVideoSource::OnCaptureEnded() { | ||||||
|  |   mFirstFramePromiseHolder.RejectIfExists(NS_ERROR_UNEXPECTED, __func__); | ||||||
|   mCaptureEndedEvent.Notify(); |   mCaptureEndedEvent.Notify(); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
		Loading…
	
		Reference in a new issue
	
	 Andreas Pehrson
						Andreas Pehrson