Hello community, here is the log from the commit of package chromium for openSUSE:Factory checked in at 2018-09-07 15:41:48 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/chromium (Old) and /work/SRC/openSUSE:Factory/.chromium.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "chromium" Fri Sep 7 15:41:48 2018 rev:195 rq:633746 version:69.0.3497.81 Changes: -------- --- /work/SRC/openSUSE:Factory/chromium/chromium.changes 2018-08-24 17:13:33.618746229 +0200 +++ /work/SRC/openSUSE:Factory/.chromium.new/chromium.changes 2018-09-07 15:43:36.926265585 +0200 @@ -1,0 +2,57 @@ +Thu Sep 6 13:27:18 UTC 2018 - tchva...@suse.com + +- Add patch to fix mojo build on 32bit: + * chromium-gcc8-alignof.patch + +------------------------------------------------------------------- +Thu Sep 6 09:13:49 UTC 2018 - Tomáš Chvátal <tchva...@suse.com> + +- Split out the gn from this package, obsoletes patches: + * fix-gn-bootstrap.patch + * chromium-last-commit-position-r0.patch + +------------------------------------------------------------------- +Thu Sep 6 09:09:57 UTC 2018 - Tomáš Chvátal <tchva...@suse.com> + +- Version update to 69.0.3497.81 bsc#1107235: + * CVE-2018-16065: Out of bounds write in V8 + * CVE-2018-16066:Out of bounds read in Blink + * CVE-2018-16067: Out of bounds read in WebAudio + * CVE-2018-16068: Out of bounds write in Mojo + * CVE-2018-16069:Out of bounds read in SwiftShader + * CVE-2018-16070: Integer overflow in Skia + * CVE-2018-16071: Use after free in WebRTC + * CVE-2018-16073: Site Isolation bypass after tab restore + * CVE-2018-16074: Site Isolation bypass using Blob URLS + * Out of bounds read in Little-CMS + * CVE-2018-16075: Local file access in Blink + * CVE-2018-16076: Out of bounds read in PDFium + * CVE-2018-16077: Content security policy bypass in Blink + * CVE-2018-16078: Credit card information leak in Autofill + * CVE-2018-16079: URL spoof in permission dialogs + * CVE-2018-16080: URL spoof in full screen mode + * CVE-2018-16081: Local file access in DevTools + * CVE-2018-16082: Stack buffer overflow in SwiftShader + * CVE-2018-16083: Out of bounds read in WebRTC + * CVE-2018-16084: User confirmation bypass in external protocol handling + * CVE-2018-16085: Use after free in Memory Instrumentation +- Added patches: + * chromium-old-glibc.patch + * chromium-system-icu.patch + * chromium-warnings.patch +- Removed patches: + * chromium-cors-string.patch + * chromium-crashpad-aarch64-fix.patch + * chromium-ffmpeg.patch + * chromium-gcc.patch + * chromium-gcc7.patch + * chromium-libjpeg.patch + * chromium-libwebp-shim.patch +- Rebased patches: + * chromium-last-commit-position-r0.patch + * chromium-non-void-return.patch + * chromium-sandbox-pie.patch + * chromium-skia-system-fontconfig.patch + * chromium-vaapi.patch + +------------------------------------------------------------------- @@ -442,0 +500 @@ + * bsc#1106341 CVE-2017-15430 Unsafe navigation in Chromecast Old: ---- chromium-68.0.3440.106.tar.xz chromium-cors-string.patch chromium-crashpad-aarch64-fix.patch chromium-ffmpeg.patch chromium-gcc.patch chromium-gcc7.patch chromium-last-commit-position-r0.patch chromium-libjpeg.patch chromium-libwebp-shim.patch fix-gn-bootstrap.patch New: ---- chromium-69.0.3497.81.tar.xz chromium-gcc8-alignof.patch chromium-old-glibc.patch chromium-system-icu.patch chromium-warnings.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ chromium.spec ++++++ --- /var/tmp/diff_new_pack.fn1BMq/_old 2018-09-07 15:43:48.046253705 +0200 +++ /var/tmp/diff_new_pack.fn1BMq/_new 2018-09-07 15:43:48.050253700 +0200 @@ -40,7 +40,7 @@ %bcond_with system_vpx %bcond_with clang Name: chromium -Version: 68.0.3440.106 +Version: 69.0.3497.81 Release: 0 Summary: Google's open source browser project License: BSD-3-Clause AND LGPL-2.1-or-later @@ -66,32 +66,25 @@ Patch4: chromium-dma-buf.patch Patch5: chromium-buildname.patch Patch6: chromium-non-void-return.patch -Patch7: chromium-ffmpeg.patch -Patch8: chromium-drm.patch -Patch9: chromium-sandbox-pie.patch -Patch10: chromium-libwebp-shim.patch -Patch11: chromium-libjpeg.patch -Patch12: chromium-cors-string.patch -Patch13: chromium-gcc.patch -Patch14: chromium-gcc7.patch +Patch7: chromium-drm.patch +Patch8: chromium-sandbox-pie.patch +Patch9: chromium-warnings.patch +Patch10: chromium-skia-aarch64-buildfix.patch # PATCH-FIX-UPSTREAM chromium-vpx-aarch64.patch - Fix vpx build on aarch64 (patch edited to match path for -p1) -Patch15: chromium-vpx-aarch64.patch +Patch11: chromium-vpx-aarch64.patch +Patch12: chromium-system-icu.patch +Patch13: chromium-old-glibc.patch +Patch14: chromium-gcc8-alignof.patch # Google seem not too keen on merging this but GPU accel is quite important # https://chromium-review.googlesource.com/c/chromium/src/+/532294 # https://github.com/saiarcot895/chromium-ubuntu-build/tree/master/debian/patches +# NEEDS REBASE QUITE OFTEN Patch100: chromium-vaapi.patch # Google does not care much about system libs here # https://bugs.chromium.org/p/skia/issues/detail?id=6663 Patch101: chromium-skia-system-fontconfig.patch -# GN buildsystem related patches -Patch200: chromium-last-commit-position-r0.patch -Patch201: fix-gn-bootstrap.patch # PATCH-FIX-SUSE: allow proprietary codecs to be set with chromium branding Patch202: chromium-prop-codecs.patch -# PATCH-FIX-UPSTREAM: fix skia build on aarch64 -Patch300: chromium-skia-aarch64-buildfix.patch -# PATCH-FIX-UPSTREAM: fix crashpad build on aarch64 -Patch301: chromium-crashpad-aarch64-fix.patch BuildRequires: SDL-devel BuildRequires: binutils-gold BuildRequires: bison @@ -99,6 +92,7 @@ BuildRequires: desktop-file-utils BuildRequires: fdupes BuildRequires: flex +BuildRequires: gn BuildRequires: gperf BuildRequires: hicolor-icon-theme BuildRequires: libcap-devel @@ -203,7 +197,7 @@ Obsoletes: chromium-ffmpeg Obsoletes: chromium-ffmpegsumo # no 32bit supported and it takes ages to build -ExcludeArch: %{arm} i586 ppc ppc64 ppc64le s390 s390x +ExcludeArch: %{arm} ppc ppc64 ppc64le s390 s390x %ifnarch aarch64 # Current tcmalloc does not support AArch64 BuildRequires: pkgconfig(libtcmalloc) @@ -232,7 +226,7 @@ BuildRequires: pkgconfig(icu-i18n) >= 59.0 %endif %if %{with system_vpx} -BuildRequires: pkgconfig(vpx) > 1.7.0 +BuildRequires: pkgconfig(vpx) >= 1.6.1 %endif %if %{with clang} BuildRequires: clang >= 5.0.0 @@ -292,6 +286,7 @@ net/third_party/quic net/third_party/spdy third_party/WebKit + third_party/abseil-cpp third_party/analytics third_party/angle third_party/apple_apsl @@ -303,6 +298,9 @@ third_party/angle/third_party/glslang third_party/angle/third_party/spirv-headers third_party/angle/third_party/spirv-tools + third_party/angle/third_party/vulkan-headers + third_party/angle/third_party/vulkan-loader + third_party/angle/third_party/vulkan-tools third_party/angle/third_party/vulkan-validation-layers third_party/blink third_party/boringssl @@ -606,10 +604,9 @@ myconf_gn+=" google_default_client_id=\"${google_default_client_id}\"" myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\"" -tools/gn/bootstrap/bootstrap.py -s -v --gn-gen-args "${myconf_gn}" # GN does not support passing cflags: # https://bugs.chromium.org/p/chromium/issues/detail?id=642016 -out/Release/gn gen --args="${myconf_gn}" out/Release +gn gen --args="${myconf_gn}" out/Release ninja -v %{?_smp_mflags} -C out/Release chrome chrome_sandbox chromedriver ++++++ chromium-68.0.3440.106.tar.xz -> chromium-69.0.3497.81.tar.xz ++++++ /work/SRC/openSUSE:Factory/chromium/chromium-68.0.3440.106.tar.xz /work/SRC/openSUSE:Factory/.chromium.new/chromium-69.0.3497.81.tar.xz differ: char 26, line 1 ++++++ chromium-gcc8-alignof.patch ++++++ From: Fedora Subject: Fix build for 32-bit platforms Apparently not upstream, can't find this anywhere. So I assume Fedora is the actual source? https://src.fedoraproject.org/cgit/rpms/chromium.git/tree/chromium-66.0.3359.170-gcc8-alignof.patch Index: chromium-69.0.3497.81/mojo/public/c/system/macros.h =================================================================== --- chromium-69.0.3497.81.orig/mojo/public/c/system/macros.h +++ chromium-69.0.3497.81/mojo/public/c/system/macros.h @@ -27,7 +27,13 @@ (sizeof(void*) == 4 ? 32 : 0) // Like the C++11 |alignof| operator. -#if __cplusplus >= 201103L +#if defined(__GNUC__) && __GNUC__ >= 8 +// GCC 8 has changed the alignof operator to return the minimal alignment +// required by the target ABI, instead of the preferred alignment. +// This means that on 32-bit x86, it will return 4 instead of 8. +// Use __alignof__ instead to avoid this. +#define MOJO_ALIGNOF(type) __alignof__(type) +#elif __cplusplus >= 201103L #define MOJO_ALIGNOF(type) alignof(type) #elif defined(__GNUC__) #define MOJO_ALIGNOF(type) __alignof__(type) ++++++ chromium-non-void-return.patch ++++++ --- /var/tmp/diff_new_pack.fn1BMq/_old 2018-09-07 15:43:48.122253623 +0200 +++ /var/tmp/diff_new_pack.fn1BMq/_new 2018-09-07 15:43:48.126253619 +0200 @@ -1,8 +1,8 @@ -Index: chromium-67.0.3396.30/media/gpu/vaapi/vaapi_wrapper.cc +Index: chromium-69.0.3497.57/media/gpu/vaapi/vaapi_wrapper.cc =================================================================== ---- chromium-67.0.3396.30.orig/media/gpu/vaapi/vaapi_wrapper.cc -+++ chromium-67.0.3396.30/media/gpu/vaapi/vaapi_wrapper.cc -@@ -390,6 +390,8 @@ static VAEntrypoint GetVaEntryPoint(Vaap +--- chromium-69.0.3497.57.orig/media/gpu/vaapi/vaapi_wrapper.cc ++++ chromium-69.0.3497.57/media/gpu/vaapi/vaapi_wrapper.cc +@@ -400,6 +400,8 @@ static VAEntrypoint GetVaEntryPoint(Vaap case VaapiWrapper::kCodecModeMax: NOTREACHED(); return VAEntrypointVLD; @@ -11,10 +11,10 @@ } } -Index: chromium-68.0.3440.17/cc/input/snap_fling_controller.cc +Index: chromium-69.0.3497.57/cc/input/snap_fling_controller.cc =================================================================== ---- chromium-68.0.3440.17.orig/cc/input/snap_fling_controller.cc -+++ chromium-68.0.3440.17/cc/input/snap_fling_controller.cc +--- chromium-69.0.3497.57.orig/cc/input/snap_fling_controller.cc ++++ chromium-69.0.3497.57/cc/input/snap_fling_controller.cc @@ -26,6 +26,8 @@ bool SnapFlingController::FilterEventFor case GestureScrollType::kEnd: { return state_ == State::kActive || state_ == State::kFinished; @@ -24,11 +24,11 @@ } } -Index: chromium-68.0.3440.17/chrome/browser/ui/webui/discards/discards_ui.cc +Index: chromium-69.0.3497.57/chrome/browser/ui/webui/discards/discards_ui.cc =================================================================== ---- chromium-68.0.3440.17.orig/chrome/browser/ui/webui/discards/discards_ui.cc -+++ chromium-68.0.3440.17/chrome/browser/ui/webui/discards/discards_ui.cc -@@ -44,6 +44,8 @@ mojom::LifecycleUnitVisibility GetLifecy +--- chromium-69.0.3497.57.orig/chrome/browser/ui/webui/discards/discards_ui.cc ++++ chromium-69.0.3497.57/chrome/browser/ui/webui/discards/discards_ui.cc +@@ -48,6 +48,8 @@ mojom::LifecycleUnitVisibility GetLifecy return mojom::LifecycleUnitVisibility::OCCLUDED; case content::Visibility::VISIBLE: return mojom::LifecycleUnitVisibility::VISIBLE; @@ -37,11 +37,11 @@ } #if defined(COMPILER_MSVC) NOTREACHED(); -Index: chromium-68.0.3440.17/components/autofill/core/browser/autofill_manager.cc +Index: chromium-69.0.3497.57/components/autofill/core/browser/autofill_manager.cc =================================================================== ---- chromium-68.0.3440.17.orig/components/autofill/core/browser/autofill_manager.cc -+++ chromium-68.0.3440.17/components/autofill/core/browser/autofill_manager.cc -@@ -303,6 +303,7 @@ PopupType AutofillManager::GetPopupType( +--- chromium-69.0.3497.57.orig/components/autofill/core/browser/autofill_manager.cc ++++ chromium-69.0.3497.57/components/autofill/core/browser/autofill_manager.cc +@@ -285,6 +285,7 @@ PopupType AutofillManager::GetPopupType( default: NOTREACHED(); @@ -49,10 +49,10 @@ } } -Index: chromium-68.0.3440.17/components/cast_channel/cast_message_util.cc +Index: chromium-69.0.3497.57/components/cast_channel/cast_message_util.cc =================================================================== ---- chromium-68.0.3440.17.orig/components/cast_channel/cast_message_util.cc -+++ chromium-68.0.3440.17/components/cast_channel/cast_message_util.cc +--- chromium-69.0.3497.57.orig/components/cast_channel/cast_message_util.cc ++++ chromium-69.0.3497.57/components/cast_channel/cast_message_util.cc @@ -368,6 +368,8 @@ const char* GetAppAvailabilityResultToSt return "unavailable"; case GetAppAvailabilityResult::kUnknown: @@ -62,11 +62,11 @@ } } -Index: chromium-68.0.3440.17/components/data_reduction_proxy/core/browser/data_reduction_proxy_util.cc +Index: chromium-69.0.3497.57/components/data_reduction_proxy/core/browser/data_reduction_proxy_util.cc =================================================================== ---- chromium-68.0.3440.17.orig/components/data_reduction_proxy/core/browser/data_reduction_proxy_util.cc -+++ chromium-68.0.3440.17/components/data_reduction_proxy/core/browser/data_reduction_proxy_util.cc -@@ -329,6 +329,8 @@ PageloadMetrics_ConnectionType ProtoConn +--- chromium-69.0.3497.57.orig/components/data_reduction_proxy/core/browser/data_reduction_proxy_util.cc ++++ chromium-69.0.3497.57/components/data_reduction_proxy/core/browser/data_reduction_proxy_util.cc +@@ -337,6 +337,8 @@ PageloadMetrics_ConnectionType ProtoConn return PageloadMetrics_ConnectionType_CONNECTION_NONE; case net::NetworkChangeNotifier::CONNECTION_BLUETOOTH: return PageloadMetrics_ConnectionType_CONNECTION_BLUETOOTH; @@ -75,10 +75,19 @@ } } -Index: chromium-68.0.3440.17/content/browser/cache_storage/cache_storage_quota_client.cc +@@ -351,6 +353,8 @@ RequestInfo_Protocol ProtoRequestInfoPro + return RequestInfo_Protocol_QUIC; + case DataReductionProxyData::RequestInfo::Protocol::UNKNOWN: + return RequestInfo_Protocol_UNKNOWN; ++ default: ++ return RequestInfo_Protocol_UNKNOWN; + } + } + +Index: chromium-69.0.3497.57/content/browser/cache_storage/cache_storage_quota_client.cc =================================================================== ---- chromium-68.0.3440.17.orig/content/browser/cache_storage/cache_storage_quota_client.cc -+++ chromium-68.0.3440.17/content/browser/cache_storage/cache_storage_quota_client.cc +--- chromium-69.0.3497.57.orig/content/browser/cache_storage/cache_storage_quota_client.cc ++++ chromium-69.0.3497.57/content/browser/cache_storage/cache_storage_quota_client.cc @@ -98,6 +98,8 @@ storage::QuotaClient::ID CacheStorageQuo return kServiceWorkerCache; case CacheStorageOwner::kBackgroundFetch: @@ -88,12 +97,12 @@ } } -Index: chromium-68.0.3440.17/media/capture/video/video_capture_device_descriptor.cc +Index: chromium-69.0.3497.57/media/capture/video/video_capture_device_descriptor.cc =================================================================== ---- chromium-68.0.3440.17.orig/media/capture/video/video_capture_device_descriptor.cc -+++ chromium-68.0.3440.17/media/capture/video/video_capture_device_descriptor.cc -@@ -92,6 +92,8 @@ const char* VideoCaptureDeviceDescriptor - return "Camera API2 Limited"; +--- chromium-69.0.3497.57.orig/media/capture/video/video_capture_device_descriptor.cc ++++ chromium-69.0.3497.57/media/capture/video/video_capture_device_descriptor.cc +@@ -94,6 +94,8 @@ const char* VideoCaptureDeviceDescriptor + return "Virtual Device"; case VideoCaptureApi::UNKNOWN: return "Unknown"; + default: @@ -101,11 +110,11 @@ } } -Index: chromium-68.0.3440.17/net/nqe/network_quality_estimator.cc +Index: chromium-69.0.3497.57/net/nqe/network_quality_estimator.cc =================================================================== ---- chromium-68.0.3440.17.orig/net/nqe/network_quality_estimator.cc -+++ chromium-68.0.3440.17/net/nqe/network_quality_estimator.cc -@@ -1319,6 +1319,8 @@ base::TimeDelta NetworkQualityEstimator: +--- chromium-69.0.3497.57.orig/net/nqe/network_quality_estimator.cc ++++ chromium-69.0.3497.57/net/nqe/network_quality_estimator.cc +@@ -1342,6 +1342,8 @@ base::TimeDelta NetworkQualityEstimator: case nqe::internal::OBSERVATION_CATEGORY_COUNT: NOTREACHED(); return base::TimeDelta(); @@ -114,10 +123,10 @@ } } -Index: chromium-68.0.3440.17/services/audio/public/cpp/audio_system_to_service_adapter.cc +Index: chromium-69.0.3497.57/services/audio/public/cpp/audio_system_to_service_adapter.cc =================================================================== ---- chromium-68.0.3440.17.orig/services/audio/public/cpp/audio_system_to_service_adapter.cc -+++ chromium-68.0.3440.17/services/audio/public/cpp/audio_system_to_service_adapter.cc +--- chromium-69.0.3497.57.orig/services/audio/public/cpp/audio_system_to_service_adapter.cc ++++ chromium-69.0.3497.57/services/audio/public/cpp/audio_system_to_service_adapter.cc @@ -66,6 +66,8 @@ const char* GetTraceEvent(Action action) return "AudioSystemToServiceAdapter::GetAssociatedOutputDeviceID"; case kGetInputDeviceInfo: @@ -127,11 +136,11 @@ } NOTREACHED(); } -Index: chromium-68.0.3440.17/services/network/cross_origin_read_blocking.cc +Index: chromium-69.0.3497.57/services/network/cross_origin_read_blocking.cc =================================================================== ---- chromium-68.0.3440.17.orig/services/network/cross_origin_read_blocking.cc -+++ chromium-68.0.3440.17/services/network/cross_origin_read_blocking.cc -@@ -786,6 +786,8 @@ bool CrossOriginReadBlocking::ResponseAn +--- chromium-69.0.3497.57.orig/services/network/cross_origin_read_blocking.cc ++++ chromium-69.0.3497.57/services/network/cross_origin_read_blocking.cc +@@ -800,6 +800,8 @@ bool CrossOriginReadBlocking::ResponseAn return sniffers_.empty() && !found_blockable_content_; case kBlock: return false; @@ -140,7 +149,7 @@ } } -@@ -797,6 +799,8 @@ bool CrossOriginReadBlocking::ResponseAn +@@ -811,6 +813,8 @@ bool CrossOriginReadBlocking::ResponseAn return sniffers_.empty() && found_blockable_content_; case kBlock: return true; @@ -149,11 +158,11 @@ } } -Index: chromium-68.0.3440.17/third_party/blink/renderer/modules/accessibility/ax_layout_object.cc +Index: chromium-69.0.3497.57/third_party/blink/renderer/modules/accessibility/ax_layout_object.cc =================================================================== ---- chromium-68.0.3440.17.orig/third_party/blink/renderer/modules/accessibility/ax_layout_object.cc -+++ chromium-68.0.3440.17/third_party/blink/renderer/modules/accessibility/ax_layout_object.cc -@@ -1139,6 +1139,8 @@ AXTextPosition AXLayoutObject::GetTextPo +--- chromium-69.0.3497.57.orig/third_party/blink/renderer/modules/accessibility/ax_layout_object.cc ++++ chromium-69.0.3497.57/third_party/blink/renderer/modules/accessibility/ax_layout_object.cc +@@ -1191,6 +1191,8 @@ AXTextPosition AXLayoutObject::GetTextPo return kAXTextPositionSubscript; case EVerticalAlign::kSuper: return kAXTextPositionSuperscript; @@ -162,10 +171,10 @@ } } -Index: chromium-68.0.3440.17/third_party/blink/renderer/modules/webaudio/audio_param.cc +Index: chromium-69.0.3497.57/third_party/blink/renderer/modules/webaudio/audio_param.cc =================================================================== ---- chromium-68.0.3440.17.orig/third_party/blink/renderer/modules/webaudio/audio_param.cc -+++ chromium-68.0.3440.17/third_party/blink/renderer/modules/webaudio/audio_param.cc +--- chromium-69.0.3497.57.orig/third_party/blink/renderer/modules/webaudio/audio_param.cc ++++ chromium-69.0.3497.57/third_party/blink/renderer/modules/webaudio/audio_param.cc @@ -144,6 +144,7 @@ String AudioParamHandler::GetParamName() return custom_param_name_; default: @@ -174,11 +183,11 @@ } } -Index: chromium-68.0.3440.17/ui/accessibility/platform/ax_platform_node_auralinux.cc +Index: chromium-69.0.3497.57/ui/accessibility/platform/ax_platform_node_auralinux.cc =================================================================== ---- chromium-68.0.3440.17.orig/ui/accessibility/platform/ax_platform_node_auralinux.cc -+++ chromium-68.0.3440.17/ui/accessibility/platform/ax_platform_node_auralinux.cc -@@ -1288,6 +1288,8 @@ AtkRole AXPlatformNodeAuraLinux::GetAtkR +--- chromium-69.0.3497.57.orig/ui/accessibility/platform/ax_platform_node_auralinux.cc ++++ chromium-69.0.3497.57/ui/accessibility/platform/ax_platform_node_auralinux.cc +@@ -1291,6 +1291,8 @@ AtkRole AXPlatformNodeAuraLinux::GetAtkR case ax::mojom::Role::kPresentational: case ax::mojom::Role::kUnknown: return ATK_ROLE_REDUNDANT_OBJECT; @@ -187,3 +196,312 @@ } } +Index: chromium-69.0.3497.57/chrome/browser/chrome_browser_main.cc +=================================================================== +--- chromium-69.0.3497.57.orig/chrome/browser/chrome_browser_main.cc ++++ chromium-69.0.3497.57/chrome/browser/chrome_browser_main.cc +@@ -769,6 +769,8 @@ bool WaitUntilMachineLevelUserCloudPolic + case RegisterResult::kQuitDueToFailure: + chrome::AttemptExit(); + return false; ++ default: ++ return true; + } + #else + return true; +Index: chromium-69.0.3497.57/chrome/browser/resource_coordinator/tab_lifecycle_unit.cc +=================================================================== +--- chromium-69.0.3497.57.orig/chrome/browser/resource_coordinator/tab_lifecycle_unit.cc ++++ chromium-69.0.3497.57/chrome/browser/resource_coordinator/tab_lifecycle_unit.cc +@@ -161,6 +161,7 @@ bool IsValidStateChange(LifecycleUnitSta + default: { return false; } + } + } ++ default: { return false; } + } + } + +@@ -172,6 +173,8 @@ StateChangeReason DiscardReasonToStateCh + return StateChangeReason::BROWSER_INITIATED; + case DiscardReason::kUrgent: + return StateChangeReason::SYSTEM_MEMORY_PRESSURE; ++ default: ++ return StateChangeReason::BROWSER_INITIATED; + } + } + +Index: chromium-69.0.3497.57/chrome/browser/ui/views/harmony/material_refresh_layout_provider.cc +=================================================================== +--- chromium-69.0.3497.57.orig/chrome/browser/ui/views/harmony/material_refresh_layout_provider.cc ++++ chromium-69.0.3497.57/chrome/browser/ui/views/harmony/material_refresh_layout_provider.cc +@@ -43,6 +43,8 @@ int MaterialRefreshLayoutProvider::GetCo + return 8; + case views::EMPHASIS_MAXIMUM: + return std::min(size.width(), size.height()) / 2; ++ default: ++ return 0; + } + } + +@@ -60,6 +62,8 @@ int MaterialRefreshLayoutProvider::GetSh + return 3; + case views::EMPHASIS_MAXIMUM: + return 16; ++ default: ++ return 0; + } + } + +Index: chromium-69.0.3497.57/components/password_manager/core/browser/browser_save_password_progress_logger.cc +=================================================================== +--- chromium-69.0.3497.57.orig/components/password_manager/core/browser/browser_save_password_progress_logger.cc ++++ chromium-69.0.3497.57/components/password_manager/core/browser/browser_save_password_progress_logger.cc +@@ -86,6 +86,8 @@ std::string VoteTypeToString( + return "HTML classifier"; + case AutofillUploadContents::Field::FIRST_USE: + return "First use"; ++ default: ++ return "No information"; + } + } + +Index: chromium-69.0.3497.57/components/policy/core/common/policy_proto_decoders.cc +=================================================================== +--- chromium-69.0.3497.57.orig/components/policy/core/common/policy_proto_decoders.cc ++++ chromium-69.0.3497.57/components/policy/core/common/policy_proto_decoders.cc +@@ -42,6 +42,8 @@ bool GetPolicyLevel(const AnyPolicyProto + return true; + case em::PolicyOptions::UNSET: + return false; ++ default: ++ return false; + } + } + +@@ -186,4 +188,4 @@ void DecodeProtoFields( + } + } + +-} // namespace policy +\ No newline at end of file ++} // namespace policy +Index: chromium-69.0.3497.57/components/previews/content/previews_hints.cc +=================================================================== +--- chromium-69.0.3497.57.orig/components/previews/content/previews_hints.cc ++++ chromium-69.0.3497.57/components/previews/content/previews_hints.cc +@@ -94,6 +94,8 @@ ConvertProtoOptimizationTypeToPreviewsOp + return PreviewsType::NOSCRIPT; + case optimization_guide::proto::RESOURCE_LOADING: + return PreviewsType::RESOURCE_LOADING_HINTS; ++ default: ++ return base::nullopt; + } + } + +Index: chromium-69.0.3497.57/components/previews/core/previews_black_list.cc +=================================================================== +--- chromium-69.0.3497.57.orig/components/previews/core/previews_black_list.cc ++++ chromium-69.0.3497.57/components/previews/core/previews_black_list.cc +@@ -33,6 +33,9 @@ PreviewsEligibilityReason BlacklistReaso + return PreviewsEligibilityReason::ALLOWED; + case blacklist::BlacklistReason::kAllowed: + return PreviewsEligibilityReason::ALLOWED; ++ default: ++ NOTREACHED() << "Previews does not support type-base blacklisting"; ++ return PreviewsEligibilityReason::ALLOWED; + } + } + +Index: chromium-69.0.3497.57/content/browser/frame_host/frame_tree_node.cc +=================================================================== +--- chromium-69.0.3497.57.orig/content/browser/frame_host/frame_tree_node.cc ++++ chromium-69.0.3497.57/content/browser/frame_host/frame_tree_node.cc +@@ -624,6 +624,7 @@ bool FrameTreeNode::UpdateUserActivation + return NotifyUserActivation(); + } + NOTREACHED() << "Invalid update_type."; ++ return false; + } + + void FrameTreeNode::OnSetHasReceivedUserGestureBeforeNavigation(bool value) { +Index: chromium-69.0.3497.57/content/renderer/input/input_event_prediction.cc +=================================================================== +--- chromium-69.0.3497.57.orig/content/renderer/input/input_event_prediction.cc ++++ chromium-69.0.3497.57/content/renderer/input/input_event_prediction.cc +@@ -76,6 +76,8 @@ std::unique_ptr<ui::InputPredictor> Inpu + return std::make_unique<ui::LeastSquaresPredictor>(); + case PredictorType::kKalman: + return std::make_unique<ui::KalmanPredictor>(); ++ default: ++ return std::make_unique<ui::EmptyPredictor>(); + } + } + +Index: chromium-69.0.3497.57/content/renderer/media/webrtc/peer_connection_tracker.cc +=================================================================== +--- chromium-69.0.3497.57.orig/content/renderer/media/webrtc/peer_connection_tracker.cc ++++ chromium-69.0.3497.57/content/renderer/media/webrtc/peer_connection_tracker.cc +@@ -112,6 +112,8 @@ static const char* SerializeDirection( + return "'recvonly'"; + case webrtc::RtpTransceiverDirection::kInactive: + return "'inactive'"; ++ default: ++ return "'unknown'"; + } + } + +Index: chromium-69.0.3497.57/device/bluetooth/bluetooth_remote_gatt_characteristic.cc +=================================================================== +--- chromium-69.0.3497.57.orig/device/bluetooth/bluetooth_remote_gatt_characteristic.cc ++++ chromium-69.0.3497.57/device/bluetooth/bluetooth_remote_gatt_characteristic.cc +@@ -397,6 +397,8 @@ bool BluetoothRemoteGattCharacteristic:: + return hasNotify; + case NotificationType::kIndication: + return hasIndicate; ++ default: ++ return false; + } + } + +Index: chromium-69.0.3497.57/media/blink/watch_time_reporter.cc +=================================================================== +--- chromium-69.0.3497.57.orig/media/blink/watch_time_reporter.cc ++++ chromium-69.0.3497.57/media/blink/watch_time_reporter.cc +@@ -571,6 +571,8 @@ WatchTimeKey WatchTimeReporter::GetDispl + return DISPLAY_TYPE_KEY(DisplayFullscreen); + case DisplayType::kPictureInPicture: + return DISPLAY_TYPE_KEY(DisplayPictureInPicture); ++ default: ++ return DISPLAY_TYPE_KEY(DisplayInline); + } + } + +Index: chromium-69.0.3497.57/services/ui/public/cpp/gpu/command_buffer_metrics.cc +=================================================================== +--- chromium-69.0.3497.57.orig/services/ui/public/cpp/gpu/command_buffer_metrics.cc ++++ chromium-69.0.3497.57/services/ui/public/cpp/gpu/command_buffer_metrics.cc +@@ -86,6 +86,8 @@ std::string ContextTypeToString(ContextT + return "Unknown"; + case ContextType::FOR_TESTING: + return "ForTesting"; ++ default: ++ return "Unknown"; + } + } + +Index: chromium-69.0.3497.57/third_party/blink/renderer/core/css/style_environment_variables.cc +=================================================================== +--- chromium-69.0.3497.57.orig/third_party/blink/renderer/core/css/style_environment_variables.cc ++++ chromium-69.0.3497.57/third_party/blink/renderer/core/css/style_environment_variables.cc +@@ -67,6 +67,7 @@ const AtomicString StyleEnvironmentVaria + } + + NOTREACHED(); ++ return "unknown"; + } + + // static +Index: chromium-69.0.3497.57/third_party/blink/renderer/core/html/media/media_controls.cc +=================================================================== +--- chromium-69.0.3497.57.orig/third_party/blink/renderer/core/html/media/media_controls.cc ++++ chromium-69.0.3497.57/third_party/blink/renderer/core/html/media/media_controls.cc +@@ -36,6 +36,9 @@ AtomicString MediaControls::GetSizingCSS + return kMediaControlsSizingMediumCSSClass; + case MediaControlsSizingClass::kLarge: + return kMediaControlsSizingLargeCSSClass; ++ default: ++ NOTREACHED(); ++ return kMediaControlsSizingMediumCSSClass; + } + + NOTREACHED(); +Index: chromium-69.0.3497.57/third_party/blink/renderer/modules/cookie_store/cookie_change_event.cc +=================================================================== +--- chromium-69.0.3497.57.orig/third_party/blink/renderer/modules/cookie_store/cookie_change_event.cc ++++ chromium-69.0.3497.57/third_party/blink/renderer/modules/cookie_store/cookie_change_event.cc +@@ -53,6 +53,9 @@ String ToCookieListItemSameSite(network: + return "lax"; + case network::mojom::CookieSameSite::NO_RESTRICTION: + return "unrestricted"; ++ default: ++ NOTREACHED(); ++ return "unknown"; + } + + NOTREACHED(); +Index: chromium-69.0.3497.57/third_party/blink/renderer/modules/peerconnection/rtc_rtp_transceiver.cc +=================================================================== +--- chromium-69.0.3497.57.orig/third_party/blink/renderer/modules/peerconnection/rtc_rtp_transceiver.cc ++++ chromium-69.0.3497.57/third_party/blink/renderer/modules/peerconnection/rtc_rtp_transceiver.cc +@@ -28,6 +28,8 @@ String TransceiverDirectionToString( + return "recvonly"; + case webrtc::RtpTransceiverDirection::kInactive: + return "inactive"; ++ default: ++ return "unknown"; + } + } + +Index: chromium-69.0.3497.57/third_party/blink/renderer/platform/heap/heap_stats_collector.h +=================================================================== +--- chromium-69.0.3497.57.orig/third_party/blink/renderer/platform/heap/heap_stats_collector.h ++++ chromium-69.0.3497.57/third_party/blink/renderer/platform/heap/heap_stats_collector.h +@@ -94,6 +94,8 @@ class PLATFORM_EXPORT ThreadHeapStatsCol + return "BlinkGC.VisitPersistents"; + case Id::kVisitStackRoots: + return "BlinkGC.VisitStackRoots"; ++ default: ++ return "BlinkGC.Unknown"; + } + } + +Index: chromium-69.0.3497.57/third_party/blink/renderer/platform/scheduler/main_thread/page_scheduler_impl.cc +=================================================================== +--- chromium-69.0.3497.57.orig/third_party/blink/renderer/platform/scheduler/main_thread/page_scheduler_impl.cc ++++ chromium-69.0.3497.57/third_party/blink/renderer/platform/scheduler/main_thread/page_scheduler_impl.cc +@@ -670,6 +670,9 @@ PageSchedulerImpl::PageLifecycleStateTra + NOTREACHED(); + return base::nullopt; + } ++ default: ++ NOTREACHED(); ++ return base::nullopt; + } + } + +Index: chromium-69.0.3497.57/ui/base/mojo/clipboard_struct_traits.h +=================================================================== +--- chromium-69.0.3497.57.orig/ui/base/mojo/clipboard_struct_traits.h ++++ chromium-69.0.3497.57/ui/base/mojo/clipboard_struct_traits.h +@@ -20,6 +20,9 @@ struct EnumTraits<ui::mojom::ClipboardTy + return ui::mojom::ClipboardType::SELECTION; + case ui::CLIPBOARD_TYPE_DRAG: + return ui::mojom::ClipboardType::DRAG; ++ default: ++ NOTREACHED(); ++ return ui::mojom::ClipboardType::SELECTION; + } + } + +@@ -34,6 +37,8 @@ struct EnumTraits<ui::mojom::ClipboardTy + case ui::mojom::ClipboardType::DRAG: + *out = ui::CLIPBOARD_TYPE_DRAG; + return true; ++ default: ++ return false; + } + NOTREACHED(); + return false; +Index: chromium-69.0.3497.57/ui/views/layout/layout_provider.cc +=================================================================== +--- chromium-69.0.3497.57.orig/ui/views/layout/layout_provider.cc ++++ chromium-69.0.3497.57/ui/views/layout/layout_provider.cc +@@ -156,6 +156,8 @@ int LayoutProvider::GetCornerRadiusMetri + return is_touch ? 8 : 4; + case EMPHASIS_MAXIMUM: + return is_touch ? std::min(size.width(), size.height()) / 2 : 4; ++ default: ++ return 0; + } + } + ++++++ chromium-old-glibc.patch ++++++ Index: chromium-69.0.3497.72/gpu/config/gpu_info.cc =================================================================== --- chromium-69.0.3497.72.orig/gpu/config/gpu_info.cc +++ chromium-69.0.3497.72/gpu/config/gpu_info.cc @@ -99,15 +99,15 @@ GPUInfo::GPUDevice::GPUDevice() GPUInfo::GPUDevice::GPUDevice(const GPUInfo::GPUDevice& other) = default; -GPUInfo::GPUDevice::GPUDevice(GPUInfo::GPUDevice&& other) noexcept = default; +GPUInfo::GPUDevice::GPUDevice(GPUInfo::GPUDevice&& other) = default; -GPUInfo::GPUDevice::~GPUDevice() noexcept = default; +GPUInfo::GPUDevice::~GPUDevice() = default; GPUInfo::GPUDevice& GPUInfo::GPUDevice::operator=( const GPUInfo::GPUDevice& other) = default; GPUInfo::GPUDevice& GPUInfo::GPUDevice::operator=( - GPUInfo::GPUDevice&& other) noexcept = default; + GPUInfo::GPUDevice&& other) = default; GPUInfo::GPUInfo() : optimus(false), Index: chromium-69.0.3497.72/components/policy/core/common/policy_map.cc =================================================================== --- chromium-69.0.3497.72.orig/components/policy/core/common/policy_map.cc +++ chromium-69.0.3497.72/components/policy/core/common/policy_map.cc @@ -15,8 +15,8 @@ PolicyMap::Entry::Entry() = default; PolicyMap::Entry::~Entry() = default; -PolicyMap::Entry::Entry(Entry&&) noexcept = default; -PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) noexcept = default; +PolicyMap::Entry::Entry(Entry&&) = default; +PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) = default; PolicyMap::Entry PolicyMap::Entry::DeepCopy() const { Entry copy; Index: chromium-69.0.3497.72/components/search_provider_logos/logo_common.cc =================================================================== --- chromium-69.0.3497.72.orig/components/search_provider_logos/logo_common.cc +++ chromium-69.0.3497.72/components/search_provider_logos/logo_common.cc @@ -12,24 +12,24 @@ const int64_t kMaxTimeToLiveMS = INT64_C LogoMetadata::LogoMetadata() = default; LogoMetadata::LogoMetadata(const LogoMetadata&) = default; -LogoMetadata::LogoMetadata(LogoMetadata&&) noexcept = default; +LogoMetadata::LogoMetadata(LogoMetadata&&) = default; LogoMetadata& LogoMetadata::operator=(const LogoMetadata&) = default; -LogoMetadata& LogoMetadata::operator=(LogoMetadata&&) noexcept = default; +LogoMetadata& LogoMetadata::operator=(LogoMetadata&&) = default; LogoMetadata::~LogoMetadata() = default; EncodedLogo::EncodedLogo() = default; EncodedLogo::EncodedLogo(const EncodedLogo&) = default; -EncodedLogo::EncodedLogo(EncodedLogo&&) noexcept = default; +EncodedLogo::EncodedLogo(EncodedLogo&&) = default; EncodedLogo& EncodedLogo::operator=(const EncodedLogo&) = default; -EncodedLogo& EncodedLogo::operator=(EncodedLogo&&) noexcept = default; +EncodedLogo& EncodedLogo::operator=(EncodedLogo&&) = default; EncodedLogo::~EncodedLogo() = default; Logo::Logo() = default; Logo::~Logo() = default; LogoCallbacks::LogoCallbacks() = default; -LogoCallbacks::LogoCallbacks(LogoCallbacks&&) noexcept = default; -LogoCallbacks& LogoCallbacks::operator=(LogoCallbacks&&) noexcept = default; +LogoCallbacks::LogoCallbacks(LogoCallbacks&&) = default; +LogoCallbacks& LogoCallbacks::operator=(LogoCallbacks&&) = default; LogoCallbacks::~LogoCallbacks() = default; } // namespace search_provider_logos ++++++ chromium-sandbox-pie.patch ++++++ --- /var/tmp/diff_new_pack.fn1BMq/_old 2018-09-07 15:43:48.134253611 +0200 +++ /var/tmp/diff_new_pack.fn1BMq/_new 2018-09-07 15:43:48.134253611 +0200 @@ -1,25 +1,24 @@ ---- a/sandbox/linux/BUILD.gn 2016-08-03 06:31:07.000000000 +0200 -+++ b/sandbox/linux/BUILD.gn 2016-08-03 06:31:07.000000000 +0200 -@@ -297,12 +297,17 @@ - +Index: chromium-69.0.3472.3/sandbox/linux/BUILD.gn +=================================================================== +--- chromium-69.0.3472.3.orig/sandbox/linux/BUILD.gn ++++ chromium-69.0.3472.3/sandbox/linux/BUILD.gn +@@ -314,12 +314,15 @@ if (is_linux) { cflags = [ # For ULLONG_MAX -- "-std=gnu99", -+ "-std=gnu99", + "-std=gnu99", + "-fPIE", - + # These files have a suspicious comparison. # TODO fix this and re-enable this warning. "-Wno-sign-compare", ] + ++ ldflags = [ "-pie" ] + -+ ldflags = [ -+ "-pie", -+ ] - import("//build/config/compiler/compiler.gni") import("//build/config/sanitizers/sanitizers.gni") -@@ -313,7 +317,7 @@ + if (is_component_build || using_sanitizer) { +@@ -329,7 +332,7 @@ if (is_linux) { # other flags that executable_config might have. configs -= [ "//build/config:executable_config" ] if (!use_gold) { @@ -27,5 +26,4 @@ + ldflags += [ "-Wl,--disable-new-dtags" ] } } - - + ++++++ chromium-skia-system-fontconfig.patch ++++++ --- /var/tmp/diff_new_pack.fn1BMq/_old 2018-09-07 15:43:48.142253602 +0200 +++ /var/tmp/diff_new_pack.fn1BMq/_new 2018-09-07 15:43:48.142253602 +0200 @@ -1,15 +1,15 @@ ---- a/third_party/skia/src/ports/SkFontHost_FreeType.cpp 2017-10-10 17:42:06.956950985 +0200 -+++ b/third_party/skia/src/ports/SkFontHost_FreeType.cpp 2017-10-10 17:46:05.824187787 +0200 -@@ -99,8 +99,6 @@ - FreeTypeLibrary() +--- chromium-69.0.3493.3.old/third_party/skia/src/ports/SkFontHost_FreeType.cpp 2018-07-25 16:42:39.217368047 +0200 ++++ chromium-69.0.3493.3/third_party/skia/src/ports/SkFontHost_FreeType.cpp 2018-07-25 16:44:03.387793112 +0200 +@@ -112,8 +112,6 @@ : fGetVarDesignCoordinates(nullptr) + , fGetVarAxisFlags(nullptr) , fLibrary(nullptr) - , fIsLCDSupported(false) - , fLCDExtra(0) { if (FT_New_Library(&gFTMemory, &fLibrary)) { return; -@@ -147,12 +145,7 @@ +@@ -173,12 +171,7 @@ } #endif @@ -23,7 +23,7 @@ } ~FreeTypeLibrary() { if (fLibrary) { -@@ -161,8 +153,6 @@ +@@ -187,8 +180,6 @@ } FT_Library library() { return fLibrary; } @@ -32,7 +32,7 @@ // FT_Get_{MM,Var}_{Blend,Design}_Coordinates were added in FreeType 2.7.1. // Prior to this there was no way to get the coordinates out of the FT_Face. -@@ -173,8 +163,6 @@ +@@ -205,8 +196,6 @@ private: FT_Library fLibrary; @@ -41,7 +41,7 @@ // FT_Library_SetLcdFilterWeights was introduced in FreeType 2.4.0. // The following platforms provide FreeType of at least 2.4.0. -@@ -704,17 +692,6 @@ +@@ -704,17 +693,6 @@ rec->fTextSize = SkIntToScalar(1 << 14); } @@ -59,7 +59,7 @@ SkPaint::Hinting h = rec->getHinting(); if (SkPaint::kFull_Hinting == h && !isLCD(*rec)) { // collapse full->normal hinting if we're not doing LCD -@@ -1115,11 +1092,11 @@ +@@ -1109,11 +1087,11 @@ void SkScalerContext_FreeType::updateGlyphIfLCD(SkGlyph* glyph) { if (isLCD(fRec)) { if (fLCDIsVert) { ++++++ chromium-system-icu.patch ++++++ --- chromium-70.0.3521.2.old/third_party/blink/renderer/platform/text/character_property_data_generator.h 2018-08-15 12:41:21.091987662 +0200 +++ chromium-70.0.3521.2/third_party/blink/renderer/platform/text/character_property_data_generator.h 2018-08-17 12:37:45.459538308 +0200 @@ -247,7 +247,7 @@ 0xFFA0, 0xFFDC, }; -static const UChar32 kIsHangulArray[] = {}; +static const UChar32 kIsHangulArray[] = {0xFFDC,}; } // namespace blink ++++++ chromium-vaapi.patch ++++++ --- /var/tmp/diff_new_pack.fn1BMq/_old 2018-09-07 15:43:48.154253589 +0200 +++ /var/tmp/diff_new_pack.fn1BMq/_new 2018-09-07 15:43:48.154253589 +0200 @@ -40,7 +40,7 @@ =================================================================== --- dev.orig/chrome/browser/about_flags.cc +++ dev/chrome/browser/about_flags.cc -@@ -1557,6 +1557,13 @@ const FeatureEntry kFeatureEntries[] = { +@@ -1612,6 +1612,13 @@ const FeatureEntry kFeatureEntries[] = { flag_descriptions::kShowTouchHudDescription, kOsCrOS, SINGLE_VALUE_TYPE(ash::switches::kAshTouchHud)}, #endif // OS_CHROMEOS @@ -54,7 +54,7 @@ { "disable-accelerated-video-decode", flag_descriptions::kAcceleratedVideoDecodeName, -@@ -1564,6 +1571,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -1619,6 +1626,7 @@ const FeatureEntry kFeatureEntries[] = { kOsMac | kOsWin | kOsCrOS | kOsAndroid, SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedVideoDecode), }, @@ -62,7 +62,7 @@ #if defined(OS_WIN) {"enable-hdr", flag_descriptions::kEnableHDRName, flag_descriptions::kEnableHDRDescription, kOsWin, -@@ -2234,12 +2242,17 @@ const FeatureEntry kFeatureEntries[] = { +@@ -2291,12 +2299,17 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE(features::kOpenVR)}, #endif // ENABLE_OPENVR #endif // ENABLE_VR @@ -126,7 +126,7 @@ const char kAcceleratedVideoDecodeName[] = "Hardware-accelerated video decode"; const char kAcceleratedVideoDecodeDescription[] = "Hardware-accelerated video decode where available."; -@@ -2647,7 +2654,7 @@ const char kTabStripKeyboardFocusDescrip +@@ -2892,7 +2899,7 @@ const char kTabStripKeyboardFocusDescrip // Chrome OS ------------------------------------------------------------------- @@ -135,9 +135,9 @@ const char kAcceleratedMjpegDecodeName[] = "Hardware-accelerated mjpeg decode for captured frame"; -@@ -3110,7 +3117,7 @@ const char kZipArchiverUnpackerName[] = - const char kZipArchiverUnpackerDescription[] = - "Enable or disable the ability to unpack archives in incognito mode"; +@@ -3407,7 +3414,7 @@ extern const char kEnableContinueReading + "seamlessly continue reading a web page when they switch devices from " + "phones or tablets to Chromebooks."; -#endif // defined(OS_CHROMEOS) +#endif // defined(OS_CHROMEOS) || BUILDFLAG(USE_VAAPI) @@ -159,7 +159,7 @@ extern const char kAcceleratedVideoDecodeName[]; extern const char kAcceleratedVideoDecodeDescription[]; -@@ -1621,13 +1625,17 @@ extern const char kPermissionPromptPersi +@@ -1762,13 +1766,17 @@ extern const char kPermissionPromptPersi #endif // defined(OS_MACOSX) @@ -200,7 +200,7 @@ =================================================================== --- dev.orig/content/browser/renderer_host/media/video_capture_browsertest.cc +++ dev/content/browser/renderer_host/media/video_capture_browsertest.cc -@@ -163,8 +163,13 @@ class VideoCaptureBrowserTest : public C +@@ -165,8 +165,13 @@ class VideoCaptureBrowserTest : public C base::CommandLine::ForCurrentProcess()->AppendSwitch( switches::kUseFakeJpegDecodeAccelerator); } else { @@ -214,41 +214,11 @@ } } -Index: dev/content/browser/renderer_host/media/video_capture_gpu_jpeg_decoder.cc -=================================================================== ---- dev.orig/content/browser/renderer_host/media/video_capture_gpu_jpeg_decoder.cc -+++ dev/content/browser/renderer_host/media/video_capture_gpu_jpeg_decoder.cc -@@ -66,15 +66,21 @@ void VideoCaptureGpuJpegDecoder::Initial - bool is_platform_supported = - base::CommandLine::ForCurrentProcess()->HasSwitch( - switches::kUseFakeJpegDecodeAccelerator); --#if defined(OS_CHROMEOS) -- // Non-ChromeOS platforms do not support HW JPEG decode now. Do not establish -- // gpu channel to avoid introducing overhead. -+#if !defined(OS_ANDROID) && defined(OS_LINUX) -+ // Non-ChromeOS or Non-Linux platforms do not support HW JPEG decode now. Do -+ // not establish gpu channel to avoid introducing overhead. - is_platform_supported = true; - #endif - - if (!is_platform_supported || -+#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(OS_ANDROID) -+ !base::CommandLine::ForCurrentProcess()->HasSwitch( -+ switches::kEnableAcceleratedMjpegDecode) -+#else - base::CommandLine::ForCurrentProcess()->HasSwitch( -- switches::kDisableAcceleratedMjpegDecode)) { -+ switches::kDisableAcceleratedMjpegDecode) -+#endif -+ ) { - decoder_status_ = FAILED; - RecordInitDecodeUMA_Locked(); - return; Index: dev/content/browser/renderer_host/render_process_host_impl.cc =================================================================== --- dev.orig/content/browser/renderer_host/render_process_host_impl.cc +++ dev/content/browser/renderer_host/render_process_host_impl.cc -@@ -2659,7 +2659,11 @@ void RenderProcessHostImpl::PropagateBro +@@ -2724,7 +2724,11 @@ void RenderProcessHostImpl::PropagateBro switches::kDefaultTileHeight, switches::kDisable2dCanvasImageChromium, switches::kDisableAcceleratedJpegDecoding, @@ -298,7 +268,7 @@ deps = [ "//base", "//base/third_party/dynamic_annotations", -@@ -134,4 +134,8 @@ target(link_target_type, "gpu_sources") +@@ -133,4 +133,8 @@ target(link_target_type, "gpu_sources") (!is_chromecast || is_cast_desktop_build)) { configs += [ "//build/config/linux/dri" ] } @@ -311,7 +281,7 @@ =================================================================== --- dev.orig/content/gpu/gpu_main.cc +++ dev/content/gpu/gpu_main.cc -@@ -286,7 +286,7 @@ int GpuMain(const MainFunctionParams& pa +@@ -284,7 +284,7 @@ int GpuMain(const MainFunctionParams& pa base::PlatformThread::SetName("CrGpuMain"); @@ -320,7 +290,7 @@ // Set thread priority before sandbox initialization. base::PlatformThread::SetCurrentThreadPriority(base::ThreadPriority::DISPLAY); #endif -@@ -315,7 +315,7 @@ int GpuMain(const MainFunctionParams& pa +@@ -317,7 +317,7 @@ int GpuMain(const MainFunctionParams& pa GetContentClient()->SetGpuInfo(gpu_init->gpu_info()); base::ThreadPriority io_thread_priority = base::ThreadPriority::NORMAL; @@ -333,7 +303,7 @@ =================================================================== --- dev.orig/content/public/browser/gpu_utils.cc +++ dev/content/public/browser/gpu_utils.cc -@@ -58,9 +58,17 @@ const gpu::GpuPreferences GetGpuPreferen +@@ -57,9 +57,17 @@ const gpu::GpuPreferences GetGpuPreferen gpu_preferences.in_process_gpu = command_line->HasSwitch(switches::kInProcessGPU); gpu_preferences.disable_accelerated_video_decode = @@ -355,20 +325,9 @@ =================================================================== --- dev.orig/content/public/common/content_switches.cc +++ dev/content/public/common/content_switches.cc -@@ -78,12 +78,21 @@ const char kDisable3DAPIs[] - +@@ -79,6 +79,11 @@ const char kDisable3DAPIs[] // Disable gpu-accelerated 2d canvas. const char kDisableAccelerated2dCanvas[] = "disable-accelerated-2d-canvas"; -- -+#if defined(OS_LINUX) && !defined(OS_CHROMEOS) -+// Enable hardware accelerated mjpeg decode on linux -+const char kEnableAcceleratedMjpegDecode[] = "enable-accelerated-mjpeg-decode"; -+#else - // Disable hardware acceleration of mjpeg decode for captured frame, where - // available. - const char kDisableAcceleratedMjpegDecode[] = - "disable-accelerated-mjpeg-decode"; -+#endif +#if defined(OS_LINUX) +// Enables hardware acceleration of video for Linux only. VA-API driver @@ -382,47 +341,33 @@ =================================================================== --- dev.orig/content/public/common/content_switches.h +++ dev/content/public/common/content_switches.h -@@ -33,7 +33,11 @@ CONTENT_EXPORT extern const char kDisabl - CONTENT_EXPORT extern const char kDisable3DAPIs[]; - CONTENT_EXPORT extern const char kDisableAccelerated2dCanvas[]; - CONTENT_EXPORT extern const char kDisableAcceleratedJpegDecoding[]; -+#if defined(OS_LINUX) && !defined(OS_CHROMEOS) -+CONTENT_EXPORT extern const char kEnableAcceleratedMjpegDecode[]; -+#else - CONTENT_EXPORT extern const char kDisableAcceleratedMjpegDecode[]; -+#endif - CONTENT_EXPORT extern const char kDisableAcceleratedVideoDecode[]; - CONTENT_EXPORT extern const char kDisableAcceleratedVideoEncode[]; - CONTENT_EXPORT extern const char kDisableAudioSupportForDesktopShare[]; -@@ -105,6 +109,9 @@ CONTENT_EXPORT extern const char kDisabl +@@ -104,6 +104,9 @@ CONTENT_EXPORT extern const char kDisabl CONTENT_EXPORT extern const char kDomAutomationController[]; extern const char kDisable2dCanvasClipAntialiasing[]; CONTENT_EXPORT extern const char kDumpBlinkRuntimeCallStats[]; +#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(OS_ANDROID) +CONTENT_EXPORT extern const char kEnableAcceleratedVideo[]; +#endif + CONTENT_EXPORT extern const char kEnableAccessibilityObjectModel[]; CONTENT_EXPORT extern const char kEnableAggressiveDOMStorageFlushing[]; CONTENT_EXPORT extern const char kEnableAutomation[]; - CONTENT_EXPORT extern const char kEnablePreferCompositingToLCDText[]; Index: dev/content/renderer/media/webrtc/peer_connection_dependency_factory.cc =================================================================== --- dev.orig/content/renderer/media/webrtc/peer_connection_dependency_factory.cc +++ dev/content/renderer/media/webrtc/peer_connection_dependency_factory.cc -@@ -276,10 +276,20 @@ void PeerConnectionDependencyFactory::In +@@ -276,10 +276,18 @@ void PeerConnectionDependencyFactory::In const base::CommandLine* cmd_line = base::CommandLine::ForCurrentProcess(); if (gpu_factories && gpu_factories->IsGpuVideoAcceleratorEnabled()) { +#if defined(OS_LINUX) && !defined(OS_CHROMEOS) -+ if (!cmd_line->HasSwitch(switches::kDisableWebRtcHWDecoding) && -+ cmd_line->HasSwitch(switches::kEnableAcceleratedVideo)) ++ if (cmd_line->HasSwitch(switches::kEnableAcceleratedVideo)) +#else if (!cmd_line->HasSwitch(switches::kDisableWebRtcHWDecoding)) +#endif decoder_factory.reset(new RTCVideoDecoderFactory(gpu_factories)); +#if defined(OS_LINUX) && !defined(OS_CHROMEOS) -+ if (!cmd_line->HasSwitch(switches::kDisableWebRtcHWEncoding) && -+ cmd_line->HasSwitch(switches::kEnableAcceleratedVideo)) ++ if (cmd_line->HasSwitch(switches::kEnableAcceleratedVideo)) +#else if (!cmd_line->HasSwitch(switches::kDisableWebRtcHWEncoding)) +#endif @@ -433,7 +378,7 @@ =================================================================== --- dev.orig/content/renderer/render_thread_impl.cc +++ dev/content/renderer/render_thread_impl.cc -@@ -1480,7 +1480,11 @@ media::GpuVideoAcceleratorFactories* Ren +@@ -1441,7 +1441,11 @@ media::GpuVideoAcceleratorFactories* Ren kGpuStreamIdMedia, kGpuStreamPriorityMedia); const bool enable_video_accelerator = @@ -492,7 +437,7 @@ =================================================================== --- dev.orig/media/gpu/BUILD.gn +++ dev/media/gpu/BUILD.gn -@@ -500,6 +500,12 @@ if (use_v4l2_codec || use_vaapi || is_ma +@@ -495,6 +495,12 @@ if (use_v4l2_codec || use_vaapi || is_ma } } @@ -505,7 +450,7 @@ if (use_vaapi) { test("jpeg_encode_accelerator_unittest") { deps = [ -@@ -558,6 +564,7 @@ if (use_v4l2_codec || use_vaapi) { +@@ -559,6 +565,7 @@ if (use_v4l2_codec || use_vaapi) { if (use_ozone) { deps += [ "//ui/ozone" ] } @@ -529,6 +474,15 @@ =================================================================== --- dev.orig/media/gpu/vaapi/vaapi_wrapper.cc +++ dev/media/gpu/vaapi/vaapi_wrapper.cc +@@ -332,7 +332,7 @@ bool VADisplayState::InitializeOnce() { + DVLOG(1) << "VAAPI version: " << major_version << "." << minor_version << " " + << va_vendor_string_; + +- if (major_version != VA_MAJOR_VERSION || minor_version != VA_MINOR_VERSION) { ++ if (major_version != VA_MAJOR_VERSION) { + LOG(ERROR) << "This build of Chromium requires VA-API version " + << VA_MAJOR_VERSION << "." << VA_MINOR_VERSION + << ", system version: " << major_version << "." << minor_version; @@ -861,7 +861,11 @@ scoped_refptr<VASurface> VaapiWrapper::C } va_attrib_extbuf.num_planes = num_planes; @@ -545,16 +499,16 @@ =================================================================== --- dev.orig/components/viz/service/main/viz_main_impl.cc +++ dev/components/viz/service/main/viz_main_impl.cc -@@ -46,7 +46,7 @@ std::unique_ptr<base::Thread> CreateAndS - auto thread = std::make_unique<base::Thread>("VizCompositorThread"); - base::Thread::Options thread_options; - thread_options.message_loop_type = base::MessageLoop::TYPE_DEFAULT; --#if defined(OS_ANDROID) || defined(OS_CHROMEOS) +@@ -62,7 +62,7 @@ std::unique_ptr<viz::CompositorThreadTyp + thread_options.message_loop_type = base::MessageLoop::TYPE_UI; + #endif + +-#if defined(OS_CHROMEOS) +#if defined(OS_LINUX) thread_options.priority = base::ThreadPriority::DISPLAY; #endif CHECK(thread->StartWithOptions(thread_options)); -@@ -58,7 +58,7 @@ std::unique_ptr<base::Thread> CreateAndS +@@ -75,7 +75,7 @@ std::unique_ptr<base::Thread> CreateAndS // It should be possible to use |main_task_runner_| for doing IO tasks. base::Thread::Options thread_options(base::MessageLoop::TYPE_IO, 0); thread_options.priority = base::ThreadPriority::NORMAL; @@ -567,7 +521,7 @@ =================================================================== --- dev.orig/content/browser/renderer_host/render_view_host_impl.cc +++ dev/content/browser/renderer_host/render_view_host_impl.cc -@@ -442,7 +442,11 @@ WebPreferences RenderViewHostImpl::Compu +@@ -463,7 +463,11 @@ WebPreferences RenderViewHostImpl::Compu prefs.save_previous_document_resources = GetSavePreviousDocumentResources(); prefs.accelerated_video_decode_enabled = @@ -579,3 +533,93 @@ std::string autoplay_policy = media::GetEffectiveAutoplayPolicy(command_line); if (autoplay_policy == switches::autoplay::kNoUserGestureRequiredPolicy) { +Index: dev/media/base/media_switches.cc +=================================================================== +--- dev.orig/media/base/media_switches.cc ++++ dev/media/base/media_switches.cc +@@ -117,10 +117,16 @@ const char kUseFileForFakeAudioCapture[] + // accelerator hardware to be present. + const char kUseFakeJpegDecodeAccelerator[] = "use-fake-jpeg-decode-accelerator"; + ++#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(OS_ANDROID) ++// Enable hardware acceleration of mjpeg decode on Linux ++const char kEnableAcceleratedMjpegDecode[] = ++ "enable-accelerated-mjpeg-decode"; ++#else + // Disable hardware acceleration of mjpeg decode for captured frame, where + // available. + const char kDisableAcceleratedMjpegDecode[] = + "disable-accelerated-mjpeg-decode"; ++#endif + + // When running tests on a system without the required hardware or libraries, + // this flag will cause the tests to fail. Otherwise, they silently succeed. +@@ -462,15 +468,22 @@ const base::Feature kPreloadMediaEngagem + #endif + + bool IsVideoCaptureAcceleratedJpegDecodingEnabled() { ++#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(OS_ANDROID) ++ if (!base::CommandLine::ForCurrentProcess()->HasSwitch( ++ switches::kEnableAcceleratedMjpegDecode)) { ++ return false; ++ } ++#else + if (base::CommandLine::ForCurrentProcess()->HasSwitch( + switches::kDisableAcceleratedMjpegDecode)) { + return false; + } ++#endif + if (base::CommandLine::ForCurrentProcess()->HasSwitch( + switches::kUseFakeJpegDecodeAccelerator)) { + return true; + } +-#if defined(OS_CHROMEOS) ++#if defined(OS_LINUX) + return true; + #endif + return false; +Index: dev/media/base/media_switches.h +=================================================================== +--- dev.orig/media/base/media_switches.h ++++ dev/media/base/media_switches.h +@@ -66,7 +66,11 @@ MEDIA_EXPORT extern const char kUseFakeD + MEDIA_EXPORT extern const char kUseFileForFakeVideoCapture[]; + MEDIA_EXPORT extern const char kUseFileForFakeAudioCapture[]; + MEDIA_EXPORT extern const char kUseFakeJpegDecodeAccelerator[]; ++#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(OS_ANDROID) ++MEDIA_EXPORT extern const char kEnableAcceleratedMjpegDecode[]; ++#else + MEDIA_EXPORT extern const char kDisableAcceleratedMjpegDecode[]; ++#endif + + MEDIA_EXPORT extern const char kRequireAudioHardwareForTesting[]; + MEDIA_EXPORT extern const char kMuteAudio[]; +Index: dev/content/browser/utility_process_host.cc +=================================================================== +--- dev.orig/content/browser/utility_process_host.cc ++++ dev/content/browser/utility_process_host.cc +@@ -296,7 +296,11 @@ bool UtilityProcessHost::StartProcess() + switches::kOverrideUseSoftwareGLForTests, + switches::kOverrideEnabledCdmInterfaceVersion, + switches::kProxyServer, ++#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(OS_ANDROID) ++ switches::kEnableAcceleratedMjpegDecode, ++#else + switches::kDisableAcceleratedMjpegDecode, ++#endif + switches::kUseFakeDeviceForMediaStream, + switches::kUseFakeJpegDecodeAccelerator, + switches::kUseFileForFakeVideoCapture, +Index: dev/media/gpu/vaapi/vaapi_jpeg_decode_accelerator.cc +=================================================================== +--- dev.orig/media/gpu/vaapi/vaapi_jpeg_decode_accelerator.cc ++++ dev/media/gpu/vaapi/vaapi_jpeg_decode_accelerator.cc +@@ -174,7 +174,7 @@ bool VaapiJpegDecodeAccelerator::OutputP + + VAImage image = {}; + VAImageFormat format = {}; +- format.fourcc = VA_FOURCC_I420; ++ format.fourcc = libyuv::FOURCC_I420; + format.byte_order = VA_LSB_FIRST; + format.bits_per_pixel = 12; // 12 for I420 + ++++++ chromium-warnings.patch ++++++ --- chromium-67.0.3396.87/build/config/compiler/BUILD.gn.orig 2018-06-16 13:57:27.583106343 +0200 +++ chromium-67.0.3396.87/build/config/compiler/BUILD.gn 2018-06-16 14:24:26.713631391 +0200 @@ -1325,6 +1325,11 @@ # comments # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61638 cflags += [ "-Wno-comments" ] + + # too many warnings + cflags += [ "-Wno-class-memaccess" ] + cflags += [ "-Wno-packed-not-aligned" ] + cflags += [ "-Wno-int-in-bool-context" ] } }