From 298caa8160ed1f9e8d898126a62685bdfa273dd6 Mon Sep 17 00:00:00 2001 From: Tom spot Callaway Date: Thu, 29 Apr 2021 14:06:55 -0400 Subject: [PATCH] add fix for std::string.erase call --- chromium-90.0.4430.93-epel7-erase-fix.patch | 20 ++++++++++++++++++++ chromium.spec | 11 ++++++++--- 2 files changed, 28 insertions(+), 3 deletions(-) create mode 100644 chromium-90.0.4430.93-epel7-erase-fix.patch diff --git a/chromium-90.0.4430.93-epel7-erase-fix.patch b/chromium-90.0.4430.93-epel7-erase-fix.patch new file mode 100644 index 00000000..0d8b84a0 --- /dev/null +++ b/chromium-90.0.4430.93-epel7-erase-fix.patch @@ -0,0 +1,20 @@ +diff -up chromium-90.0.4430.93/components/ui_devtools/views/view_element.cc.erase-fix chromium-90.0.4430.93/components/ui_devtools/views/view_element.cc +--- chromium-90.0.4430.93/components/ui_devtools/views/view_element.cc.erase-fix 2021-04-29 14:00:38.779932160 -0400 ++++ chromium-90.0.4430.93/components/ui_devtools/views/view_element.cc 2021-04-29 14:00:54.684194321 -0400 +@@ -23,14 +23,14 @@ namespace { + // Remove any custom editor "prefixes" from the property name. The prefixes must + // not be valid identifier characters. + void StripPrefix(std::string& property_name) { +- auto cur = property_name.cbegin(); ++ auto cur = property_name.begin(); + for (; cur < property_name.cend(); ++cur) { + if ((*cur >= 'A' && *cur <= 'Z') || (*cur >= 'a' && *cur <= 'z') || + *cur == '_') { + break; + } + } +- property_name.erase(property_name.cbegin(), cur); ++ property_name.erase(property_name.begin(), cur); + } + + } // namespace diff --git a/chromium.spec b/chromium.spec index 72cfdc4c..aaae6b32 100644 --- a/chromium.spec +++ b/chromium.spec @@ -32,8 +32,8 @@ %global build_remoting 1 # We'd like to always have this on... -# ... but the libva in EL7 is too old. -%if 0%{?rhel} == 7 +# ... but the libva in EL7 (and EL8) is too old. +%if 0%{?rhel} == 7 || 0%{?rhel} == 8 %global use_vaapi 0 %else %global use_vaapi 1 @@ -144,7 +144,7 @@ BuildRequires: libicu-devel >= 5.4 %global gtk3 1 %if 0%{?rhel} == 7 || 0%{?rhel} == 8 -%global dts_version 10 +%global dts_version 9 %global bundleopus 1 %global bundlelibusbx 1 @@ -328,6 +328,10 @@ Patch106: chromium-77-clang.patch # libdrm on EL7 is rather old and chromium assumes newer # This gets us by for now Patch108: chromium-85.0.4183.83-el7-old-libdrm.patch +# error: no matching function for call to 'std::basic_string::erase(std::basic_string::const_iterator, __gnu_cxx::__normal_iterator >&)' +# 33 | property_name.erase(property_name.cbegin(), cur); +# Not sure how this EVER worked anywhere, but it only seems to fail on EPEL-7. +Patch109: chromium-90.0.4430.93-epel7-erase-fix.patch # VAAPI # Upstream turned VAAPI on in Linux in 86 @@ -947,6 +951,7 @@ udev. %patch103 -p1 -b .epel7-header-workarounds %patch104 -p1 -b .el7cups %patch108 -p1 -b .el7-old-libdrm +%patch109 -p1 -b .el7-erase-fix %endif %if 0%{?rhel} == 8