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

Unified Diff: gpu/config/gpu_control_list.cc

Issue 2373513002: gpu/config: disable partial swaps on Mesa Gallium drivers too. (Closed)
Patch Set: gpu/config: disable partial swaps on Mesa Gallium drivers too. Created 4 years, 3 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
« no previous file with comments | « gpu/config/gpu_control_list.h ('k') | gpu/config/gpu_driver_bug_list_json.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: gpu/config/gpu_control_list.cc
diff --git a/gpu/config/gpu_control_list.cc b/gpu/config/gpu_control_list.cc
index a1e1ae53e115469d9a05d7088716b50f100c5197..3fcb03f333f2e62762112d58f4f59f15ce1bbdb8 100644
--- a/gpu/config/gpu_control_list.cc
+++ b/gpu/config/gpu_control_list.cc
@@ -580,6 +580,15 @@ GpuControlList::GpuControlListEntry::GetEntryFromValue(
dictionary_entry_count++;
}
+ std::string gl_version_string_value;
+ if (value->GetString("gl_version_string", &gl_version_string_value)) {
+ if (!entry->SetGLVersionStringInfo(gl_version_string_value)) {
+ LOG(WARNING) << "Malformed gl_version_string entry " << entry->id();
+ return NULL;
+ }
+ dictionary_entry_count++;
+ }
+
std::string gl_vendor_value;
if (value->GetString("gl_vendor", &gl_vendor_value)) {
if (!entry->SetGLVendorInfo(gl_vendor_value)) {
@@ -930,6 +939,12 @@ bool GpuControlList::GpuControlListEntry::SetGLVersionInfo(
return gl_version_info_->IsValid();
}
+bool GpuControlList::GpuControlListEntry::SetGLVersionStringInfo(
+ const std::string& version_string_value) {
+ gl_version_string_info_ = version_string_value;
+ return !gl_version_string_info_.empty();
+}
+
bool GpuControlList::GpuControlListEntry::SetGLVendorInfo(
const std::string& vendor_value) {
gl_vendor_info_ = vendor_value;
@@ -1257,6 +1272,8 @@ bool GpuControlList::GpuControlListEntry::Contains(
}
if (GLVersionInfoMismatch(gpu_info.gl_version))
return false;
+ if (StringMismatch(gpu_info.gl_version, gl_version_string_info_))
+ return false;
if (StringMismatch(gpu_info.gl_vendor, gl_vendor_info_))
return false;
if (StringMismatch(gpu_info.gl_renderer, gl_renderer_info_))
@@ -1319,6 +1336,8 @@ bool GpuControlList::GpuControlListEntry::NeedsMoreInfo(
return true;
if (driver_version_info_.get() && gpu_info.driver_version.empty())
return true;
+ if (!gl_version_string_info_.empty() && gpu_info.gl_version.empty())
+ return true;
if (!gl_vendor_info_.empty() && gpu_info.gl_vendor.empty())
return true;
if (!gl_renderer_info_.empty() && gpu_info.gl_renderer.empty())
« no previous file with comments | « gpu/config/gpu_control_list.h ('k') | gpu/config/gpu_driver_bug_list_json.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698