Chromium Code Reviews| Index: chrome/browser/extensions/api/tab_capture/tab_capture_registry.cc |
| diff --git a/chrome/browser/extensions/api/tab_capture/tab_capture_registry.cc b/chrome/browser/extensions/api/tab_capture/tab_capture_registry.cc |
| index 3953de0049b504fe7a8da84bd7b802e03a3f007a..1b381ae27f7f238831d451358419a4abfd4222a1 100644 |
| --- a/chrome/browser/extensions/api/tab_capture/tab_capture_registry.cc |
| +++ b/chrome/browser/extensions/api/tab_capture/tab_capture_registry.cc |
| @@ -4,6 +4,8 @@ |
| #include "chrome/browser/extensions/api/tab_capture/tab_capture_registry.h" |
| +#include <utility> |
| + |
| #include "content/public/browser/browser_thread.h" |
| #include "chrome/browser/extensions/event_names.h" |
| #include "chrome/browser/extensions/event_router.h" |
| @@ -77,7 +79,8 @@ void TabCaptureRegistry::HandleRequestUpdateOnUIThread( |
| return; |
| } |
| - TabCaptureRegistry::TabCaptureRequest& request_info = requests_[key]; |
| + TabCaptureRegistry::TabCaptureRequest& request_info = |
| + requests_.find(key)->second; |
|
Matt Perry
2013/01/04 21:17:18
This is not the same as the old code. If |key| is
justinlin
2013/01/04 22:10:52
Done. Right, there's a check above to make sure th
|
| request_info.status = state; |
| scoped_ptr<tab_capture::CaptureInfo> info(new tab_capture::CaptureInfo()); |
| @@ -130,13 +133,14 @@ void TabCaptureRegistry::Observe(int type, |
| bool TabCaptureRegistry::AddRequest(const std::pair<int, int> key, |
| const TabCaptureRequest& request) { |
| // Currently, we do not allow multiple active captures for same tab. |
| - if (requests_.find(key) != requests_.end()) |
| - if (requests_[key].status != |
| - tab_capture::TAB_CAPTURE_TAB_CAPTURE_STATE_STOPPED && |
| - requests_[key].status != |
| - tab_capture::TAB_CAPTURE_TAB_CAPTURE_STATE_ERROR) |
| + DeviceCaptureRequestMap::iterator it = requests_.find(key); |
| + if (it != requests_.end()) { |
| + tab_capture::TabCaptureState state = it->second.status; |
|
kmadhusu
2013/01/04 21:01:01
You can avoid copying by using a const ref.
justinlin
2013/01/04 22:10:52
Done.
|
| + if (state != tab_capture::TAB_CAPTURE_TAB_CAPTURE_STATE_STOPPED && |
| + state != tab_capture::TAB_CAPTURE_TAB_CAPTURE_STATE_ERROR) |
| return false; |
| - requests_[key] = request; |
| + } |
| + requests_.insert(std::make_pair(key, request)); |
| return true; |
| } |