Index: chrome/browser/tracing/chrome_tracing_delegate.cc |
diff --git a/chrome/browser/tracing/chrome_tracing_delegate.cc b/chrome/browser/tracing/chrome_tracing_delegate.cc |
index 5521df4865e7b8ba7c8e9740dea90ab55a8b028a..3ea5872fbef33881ec9ff667fdba142dab68bc04 100644 |
--- a/chrome/browser/tracing/chrome_tracing_delegate.cc |
+++ b/chrome/browser/tracing/chrome_tracing_delegate.cc |
@@ -6,6 +6,7 @@ |
#include "base/prefs/pref_registry_simple.h" |
#include "base/prefs/pref_service.h" |
+#include "base/strings/string_split.h" |
#include "base/time/time.h" |
#include "chrome/browser/browser_process.h" |
#include "chrome/browser/profiles/profile.h" |
@@ -14,6 +15,7 @@ |
#include "chrome/browser/ui/browser.h" |
#include "chrome/browser/ui/browser_list.h" |
#include "chrome/browser/ui/browser_otr_state.h" |
+#include "chrome/common/chrome_version_info.h" |
#include "chrome/common/pref_names.h" |
#include "content/public/browser/background_tracing_config.h" |
#include "content/public/browser/browser_thread.h" |
@@ -49,6 +51,20 @@ scoped_ptr<content::TraceUploader> ChromeTracingDelegate::GetTraceUploader( |
new TraceCrashServiceUploader(request_context)); |
} |
+bool ChromeTracingDelegate::GetChromeVersion(std::string* version) { |
+ DCHECK(version); |
+ chrome::VersionInfo version_info; |
+ std::vector<std::string> product_components; |
+ base::SplitString(version_info.ProductNameAndVersionForUserAgent(), '/', |
+ &product_components); |
+ DCHECK_EQ(2U, product_components.size()); |
+ if (product_components.size() != 2U) |
+ return false; |
+ |
+ *version = product_components[1]; |
+ return true; |
+} |
+ |
bool ChromeTracingDelegate::IsAllowedToBeginBackgroundScenario( |
const content::BackgroundTracingConfig& config, |
bool requires_anonymized_data) { |