| 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..297ce0b7691b43cd312d0a787429c628ba7cd3c0 100644 | 
| --- a/content/renderer/media/media_stream_center.cc | 
| +++ b/content/renderer/media/media_stream_center.cc | 
| @@ -126,15 +126,8 @@ 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."; | 
| -    return false; | 
| -  } | 
| - | 
| -  extra_data->StopSource(); | 
| +  MediaStreamTrack* native_track = MediaStreamTrack::GetTrack(track); | 
| +  native_track->StopTrack(); | 
| return true; | 
| } | 
|  | 
| @@ -169,22 +162,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. | 
| 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 +179,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); | 
|  | 
|  |