Chromium Code Reviews| Index: content/renderer/media/media_stream_center.cc |
| diff --git a/content/renderer/media/media_stream_center.cc b/content/renderer/media/media_stream_center.cc |
| index 32314bd414d3d7e7fac269e72e94be6025e0ecf8..2279ce08a83cb9dcd3f9e545ccfb0923ae0d0dc1 100644 |
| --- a/content/renderer/media/media_stream_center.cc |
| +++ b/content/renderer/media/media_stream_center.cc |
| @@ -126,15 +126,11 @@ void MediaStreamCenter::didDisableMediaStreamTrack( |
| bool MediaStreamCenter::didStopMediaStreamTrack( |
| const blink::WebMediaStreamTrack& track) { |
| DVLOG(1) << "MediaStreamCenter::didStopMediaStreamTrack"; |
| - blink::WebMediaStreamSource source = track.source(); |
| - MediaStreamSource* extra_data = |
| - static_cast<MediaStreamSource*>(source.extraData()); |
| - if (!extra_data) { |
| - DVLOG(1) << "didStopMediaStreamTrack called on a remote track."; |
| + MediaStreamTrack* native_track = MediaStreamTrack::GetTrack(track); |
| + if (!native_track) |
| return false; |
|
no longer working on chromium
2014/04/01 18:29:58
Can this happen? Add an error log if it can. other
perkj_chrome
2014/04/02 13:35:49
Done.
Yes. In the latest spec Stop is a void meth
|
| - } |
| - extra_data->StopSource(); |
| + native_track->StopTrack(); |
| return true; |
| } |
| @@ -169,22 +165,16 @@ void MediaStreamCenter::didStopLocalMediaStream( |
| } |
| // TODO(perkj): MediaStream::Stop is being deprecated. But for the moment we |
| - // need to support the old behavior and the new. Since we only create one |
| - // source object per actual device- we need to fake stopping a |
| - // MediaStreamTrack by disabling it if the same device is used as source by |
| - // multiple tracks. Note that disabling a track here, don't affect the |
| - // enabled property in JS. |
| + // need to support both MediaStream::Stop and MediaStreamTrack::Stop. |
|
no longer working on chromium
2014/04/01 18:29:58
nit, remove the extra space
perkj_chrome
2014/04/02 13:35:49
Done.
|
| blink::WebVector<blink::WebMediaStreamTrack> audio_tracks; |
| stream.audioTracks(audio_tracks); |
| for (size_t i = 0; i < audio_tracks.size(); ++i) |
| - didDisableMediaStreamTrack(audio_tracks[i]); |
| + didStopMediaStreamTrack(audio_tracks[i]); |
| blink::WebVector<blink::WebMediaStreamTrack> video_tracks; |
| stream.videoTracks(video_tracks); |
| for (size_t i = 0; i < video_tracks.size(); ++i) |
| - didDisableMediaStreamTrack(video_tracks[i]); |
| - |
| - native_stream->OnStreamStopped(); |
| + didStopMediaStreamTrack(video_tracks[i]); |
| } |
| void MediaStreamCenter::didCreateMediaStream(blink::WebMediaStream& stream) { |
| @@ -192,7 +182,6 @@ void MediaStreamCenter::didCreateMediaStream(blink::WebMediaStream& stream) { |
| blink::WebMediaStream writable_stream(stream); |
| MediaStream* native_stream( |
| new MediaStream(rtc_factory_, |
| - MediaStream::StreamStopCallback(), |
| stream)); |
| writable_stream.setExtraData(native_stream); |