Chromium Code Reviews| Index: chrome/browser/safe_browsing/permission_reporter.cc |
| diff --git a/chrome/browser/safe_browsing/permission_reporter.cc b/chrome/browser/safe_browsing/permission_reporter.cc |
| index b64f60ceff6ea32b265873919d5740b8253b4819..944411149f1a9480811bc0dee25489cde61da453 100644 |
| --- a/chrome/browser/safe_browsing/permission_reporter.cc |
| +++ b/chrome/browser/safe_browsing/permission_reporter.cc |
| @@ -5,6 +5,7 @@ |
| #include "base/memory/ptr_util.h" |
| #include "chrome/browser/safe_browsing/permission_reporter.h" |
| #include "chrome/common/safe_browsing/permission_report.pb.h" |
| +#include "components/variations/active_field_trials.h" |
| #include "content/public/browser/permission_type.h" |
| #include "net/url_request/report_sender.h" |
| @@ -103,8 +104,25 @@ bool PermissionReporter::BuildReport(const GURL& origin, |
| report.set_origin(origin.spec()); |
| report.set_permission(PermissionTypeForReport(permission)); |
| report.set_action(PermissionActionForReport(action)); |
| - // TODO(stefanocs): Collect field trials and platform type from global |
| - // variables to the permission report. |
| + |
| + // Collect platform data. |
| +#if defined(OS_ANDROID) |
| + report.set_platform_type(PermissionReport::ANDROID_PLATFORM); |
| +#elif defined(OS_MACOSX) || defined(OS_WIN) || defined(OS_CHROMEOS) || \ |
| + defined(OS_LINUX) |
| + report.set_platform_type(PermissionReport::DESKTOP_PLATFORM); |
| +#else |
| +#error Unsupported platform. |
| +#endif |
| + |
| + // Collect field trial data. |
| + std::vector<variations::ActiveGroupId> active_group_ids; |
| + variations::GetFieldTrialActiveGroupIds(&active_group_ids); |
|
Nathan Parker
2016/06/27 18:17:20
I'm no expert in fetching field trials -- you migh
stefanocs
2016/06/28 04:51:45
Acknowledged.
|
| + for (auto active_group_id : active_group_ids) { |
| + PermissionReport::FieldTrial* field_trial = report.add_field_trials(); |
| + field_trial->set_name_id(active_group_id.name); |
| + field_trial->set_group_id(active_group_id.group); |
| + } |
| return report.SerializeToString(output); |
| } |