Index: chrome/browser/media/media_stream_devices_controller.cc |
diff --git a/chrome/browser/media/media_stream_devices_controller.cc b/chrome/browser/media/media_stream_devices_controller.cc |
index 57e1dbcc145bda22b739a77a6e2452e10e88c449..8995a288f6f048a886b8ebdd4f77ae328890427f 100644 |
--- a/chrome/browser/media/media_stream_devices_controller.cc |
+++ b/chrome/browser/media/media_stream_devices_controller.cc |
@@ -72,23 +72,25 @@ bool ContentTypeIsRequested(content::PermissionType type, |
} |
using PermissionActionCallback = |
- base::Callback<void(content::PermissionType, const GURL&)>; |
+ base::Callback<void(content::PermissionType, const GURL&, Profile*)>; |
void RecordSinglePermissionAction(const content::MediaStreamRequest& request, |
content::PermissionType permission_type, |
+ Profile* profile, |
PermissionActionCallback callback) { |
if (ContentTypeIsRequested(permission_type, request)) { |
- callback.Run(permission_type, request.security_origin); |
+ callback.Run(permission_type, request.security_origin, profile); |
} |
} |
// Calls |action_function| for each permission requested by |request|. |
void RecordPermissionAction(const content::MediaStreamRequest& request, |
+ Profile* profile, |
PermissionActionCallback callback) { |
RecordSinglePermissionAction(request, content::PermissionType::AUDIO_CAPTURE, |
- callback); |
+ profile, callback); |
RecordSinglePermissionAction(request, content::PermissionType::VIDEO_CAPTURE, |
- callback); |
+ profile, callback); |
} |
// This helper class helps to measure the number of media stream requests that |
@@ -204,8 +206,8 @@ MediaStreamDevicesController::MediaStreamDevicesController( |
MediaStreamDevicesController::~MediaStreamDevicesController() { |
if (!callback_.is_null()) { |
- RecordPermissionAction( |
- request_, base::Bind(PermissionUmaUtil::PermissionIgnored)); |
+ RecordPermissionAction(request_, profile_, |
+ base::Bind(PermissionUmaUtil::PermissionIgnored)); |
callback_.Run(content::MediaStreamDevices(), |
content::MEDIA_DEVICE_FAILED_DUE_TO_SHUTDOWN, |
std::unique_ptr<content::MediaStreamUI>()); |
@@ -280,8 +282,8 @@ GURL MediaStreamDevicesController::GetOrigin() const { |
} |
void MediaStreamDevicesController::PermissionGranted() { |
- RecordPermissionAction( |
- request_, base::Bind(PermissionUmaUtil::PermissionGranted)); |
+ RecordPermissionAction(request_, profile_, |
+ base::Bind(PermissionUmaUtil::PermissionGranted)); |
RunCallback(GetNewSetting(CONTENT_SETTINGS_TYPE_MEDIASTREAM_MIC, |
old_audio_setting_, CONTENT_SETTING_ALLOW), |
GetNewSetting(CONTENT_SETTINGS_TYPE_MEDIASTREAM_CAMERA, |
@@ -290,8 +292,8 @@ void MediaStreamDevicesController::PermissionGranted() { |
} |
void MediaStreamDevicesController::PermissionDenied() { |
- RecordPermissionAction( |
- request_, base::Bind(PermissionUmaUtil::PermissionDenied)); |
+ RecordPermissionAction(request_, profile_, |
+ base::Bind(PermissionUmaUtil::PermissionDenied)); |
RunCallback(GetNewSetting(CONTENT_SETTINGS_TYPE_MEDIASTREAM_MIC, |
old_audio_setting_, CONTENT_SETTING_BLOCK), |
GetNewSetting(CONTENT_SETTINGS_TYPE_MEDIASTREAM_CAMERA, |
@@ -302,11 +304,11 @@ void MediaStreamDevicesController::PermissionDenied() { |
void MediaStreamDevicesController::GroupedRequestFinished(bool audio_accepted, |
bool video_accepted) { |
RecordSinglePermissionAction( |
- request_, content::PermissionType::AUDIO_CAPTURE, |
+ request_, content::PermissionType::AUDIO_CAPTURE, profile_, |
base::Bind(audio_accepted ? PermissionUmaUtil::PermissionGranted |
: PermissionUmaUtil::PermissionDenied)); |
RecordSinglePermissionAction( |
- request_, content::PermissionType::VIDEO_CAPTURE, |
+ request_, content::PermissionType::VIDEO_CAPTURE, profile_, |
base::Bind(video_accepted ? PermissionUmaUtil::PermissionGranted |
: PermissionUmaUtil::PermissionDenied)); |
@@ -322,8 +324,8 @@ void MediaStreamDevicesController::GroupedRequestFinished(bool audio_accepted, |
} |
void MediaStreamDevicesController::Cancelled() { |
- RecordPermissionAction( |
- request_, base::Bind(PermissionUmaUtil::PermissionDismissed)); |
+ RecordPermissionAction(request_, profile_, |
+ base::Bind(PermissionUmaUtil::PermissionDismissed)); |
RunCallback(old_audio_setting_, old_video_setting_, |
content::MEDIA_DEVICE_PERMISSION_DISMISSED); |
} |