Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(331)

Unified Diff: content/browser/gpu/gpu_data_manager_impl_private.cc

Issue 1117813002: Add GL strings to CastSysInfo interface and use to configure GPU (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/browser/gpu/gpu_data_manager_impl_private.cc
diff --git a/content/browser/gpu/gpu_data_manager_impl_private.cc b/content/browser/gpu/gpu_data_manager_impl_private.cc
index 68d497434ece97cac7f60b6124f0d1cbf8150b80..84581c1b1564c690fd477bb8f25e3091aade01a2 100644
--- a/content/browser/gpu/gpu_data_manager_impl_private.cc
+++ b/content/browser/gpu/gpu_data_manager_impl_private.cc
@@ -489,6 +489,16 @@ void GpuDataManagerImplPrivate::GetGLStrings(std::string* gl_vendor,
*gl_version = gpu_info_.gl_version;
}
+void GpuDataManagerImplPrivate::SetGpuDeviceName(const std::string& vendor,
+ const std::string& device) {
+ if (!gpu_info_.gpu.vendor_string.empty() ||
+ !gpu_info_.gpu.device_string.empty())
+ return;
+
+ gpu_info_.gpu.vendor_string = vendor;
+ gpu_info_.gpu.device_string = device;
+}
+
void GpuDataManagerImplPrivate::Initialize() {
TRACE_EVENT0("startup", "GpuDataManagerImpl::Initialize");
if (finalized_) {
@@ -678,6 +688,12 @@ void GpuDataManagerImplPrivate::AppendGpuCommandLine(
gpu_info_.driver_vendor);
command_line->AppendSwitchASCII(switches::kGpuDriverVersion,
gpu_info_.driver_version);
+ if (!gpu_info_.gpu.vendor_string.empty())
+ command_line->AppendSwitchASCII(switches::kGpuVendorString,
+ gpu_info_.gpu.vendor_string);
+ if (!gpu_info_.gpu.device_string.empty())
+ command_line->AppendSwitchASCII(switches::kGpuDeviceString,
+ gpu_info_.gpu.device_string);
if (ShouldUseWarp())
command_line->AppendSwitch(switches::kUseWarp);
@@ -972,7 +988,17 @@ void GpuDataManagerImplPrivate::InitializeImpl(
DCHECK(success);
}
+ // Don't lose gpu vendor, device if set externally
+ std::string gpu_vendor_string = gpu_info_.gpu.vendor_string;
+ std::string gpu_device_string = gpu_info_.gpu.device_string;
+
gpu_info_ = gpu_info;
+
+ if (!gpu_vendor_string.empty())
+ gpu_info_.gpu.vendor_string = gpu_vendor_string;
+ if (!gpu_device_string.empty())
+ gpu_info_.gpu.device_string = gpu_device_string;
+
UpdateGpuInfo(gpu_info);
UpdateGpuSwitchingManager(gpu_info);
UpdatePreliminaryBlacklistedFeatures();

Powered by Google App Engine
This is Rietveld 408576698