Index: content/renderer/media/media_stream_dispatcher.cc |
=================================================================== |
--- content/renderer/media/media_stream_dispatcher.cc (revision 209718) |
+++ content/renderer/media/media_stream_dispatcher.cc (working copy) |
@@ -85,18 +85,21 @@ |
security_origin)); |
} |
-void MediaStreamDispatcher::CancelGenerateStream(int request_id) { |
+void MediaStreamDispatcher::CancelGenerateStream( |
+ int request_id, |
+ const base::WeakPtr<MediaStreamDispatcherEventHandler>& event_handler) { |
DCHECK(main_loop_->BelongsToCurrentThread()); |
DVLOG(1) << "MediaStreamDispatcher::CancelGenerateStream" |
<< ", {request_id = " << request_id << "}"; |
RequestList::iterator it = requests_.begin(); |
for (; it != requests_.end(); ++it) { |
- Request& request = *it; |
- if (request.request_id == request_id) { |
+ if (it->request_id == request_id && |
+ it->handler.get() == event_handler.get()) { |
tommi (sloooow) - chröme
2013/07/03 08:05:12
is this the right thing to do? it seems to me tha
wjia(left Chromium)
2013/07/03 17:41:36
Yes, it's the right thing to do. The request_id is
|
+ int ipc_request = it->ipc_request; |
requests_.erase(it); |
Send(new MediaStreamHostMsg_CancelGenerateStream(routing_id(), |
- request_id)); |
+ ipc_request)); |
break; |
} |
} |
@@ -197,6 +200,12 @@ |
security_origin)); |
} |
+void MediaStreamDispatcher::CancelOpenDevice( |
+ int request_id, |
+ const base::WeakPtr<MediaStreamDispatcherEventHandler>& event_handler) { |
+ CancelGenerateStream(request_id, event_handler); |
+} |
+ |
void MediaStreamDispatcher::CloseDevice(const std::string& label) { |
DCHECK(main_loop_->BelongsToCurrentThread()); |
DVLOG(1) << "MediaStreamDispatcher::CloseDevice" |