1
0

Accepting request 1030290 from mozilla:Factory

i686 and aarch64 should be fixed. No idea for ppc64le

- Mozilla Firefox 106.0
  * support editing of PDFs
  * introduced Firefox View
  * major WebRTC update
    - Better screen sharing for Windows and Linux Wayland users
    - RTP performance and reliability improvements
    - Richer statistics
    - Cross-browser and service compatibility improvements
  * detailed releasenotes
    https://www.mozilla.org/en-US/firefox/106.0/releasenotes
  MFSA 2022-44 (bsc#1204421)
  * CVE-2022-42927 (bmo#1789128)
    Same-origin policy violation could have leaked cross-origin URLs
  * CVE-2022-42928 (bmo#1791520)
    Memory Corruption in JS Engine
  * CVE-2022-42929 (bmo#1789439)
    Denial of Service via window.print
  * CVE-2022-42930 (bmo#1789503)
    Race condition in DOM Workers
  * CVE-2022-42931 (bmo#1780571)
    Username saved to a plaintext file on disk
  * CVE-2022-42932 (bmo#1789729, bmo#1791363, bmo#1792041)
    Memory safety bugs fixed in Firefox
- added -msse2 flag to fix i386 build and workaround bmo#1795993
- fixed used buildflags
- renamed mozilla-i686-build.patch to mozilla-buildfixes.patch
  as it was extended with changes for other archs

OBS-URL: https://build.opensuse.org/request/show/1030290
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/MozillaFirefox?expand=0&rev=377
This commit is contained in:
Dominique Leuenberger 2022-10-22 12:12:03 +00:00 committed by Git OBS Bridge
commit 44f5500b05
13 changed files with 273 additions and 261 deletions

View File

@ -1,3 +1,34 @@
-------------------------------------------------------------------
Sun Oct 16 20:08:21 UTC 2022 - Wolfgang Rosenauer <wr@rosenauer.org>
- Mozilla Firefox 106.0
* support editing of PDFs
* introduced Firefox View
* major WebRTC update
- Better screen sharing for Windows and Linux Wayland users
- RTP performance and reliability improvements
- Richer statistics
- Cross-browser and service compatibility improvements
* detailed releasenotes
https://www.mozilla.org/en-US/firefox/106.0/releasenotes
MFSA 2022-44 (bsc#1204421)
* CVE-2022-42927 (bmo#1789128)
Same-origin policy violation could have leaked cross-origin URLs
* CVE-2022-42928 (bmo#1791520)
Memory Corruption in JS Engine
* CVE-2022-42929 (bmo#1789439)
Denial of Service via window.print
* CVE-2022-42930 (bmo#1789503)
Race condition in DOM Workers
* CVE-2022-42931 (bmo#1780571)
Username saved to a plaintext file on disk
* CVE-2022-42932 (bmo#1789729, bmo#1791363, bmo#1792041)
Memory safety bugs fixed in Firefox
- added -msse2 flag to fix i386 build and workaround bmo#1795993
- fixed used buildflags
- renamed mozilla-i686-build.patch to mozilla-buildfixes.patch
as it was extended with changes for other archs
-------------------------------------------------------------------
Sat Oct 8 13:41:12 UTC 2022 - Andreas Stieger <andreas.stieger@gmx.de>

View File

@ -28,9 +28,9 @@
# orig_suffix b3
# major 69
# mainver %major.99
%define major 105
%define mainver %major.0.3
%define orig_version 105.0.3
%define major 106
%define mainver %major.0
%define orig_version 106.0
%define orig_suffix %{nil}
%define update_channel release
%define branding 1
@ -54,8 +54,10 @@
%ifarch %ix86
ExclusiveArch: i586 i686
BuildArch: i686
%{expand:%%global optflags %(echo "%optflags"|sed -e s/i586/i686/) -march=i686 -mtune=generic}
%{expand:%%global optflags %(echo "%optflags"|sed -e s/i586/i686/) -march=i686 -mtune=generic -msse2}
%endif
%{expand:%%global optflags %(echo "%optflags"|sed -e s/-Werror=return-type//) }
%{expand:%%global optflags %(echo "%optflags"|sed -e s/-flto=auto//) }
# general build definitions
%define progname firefox
@ -97,8 +99,8 @@ BuildRequires: gcc11-c++
BuildRequires: gcc-c++
%endif
%if 0%{?suse_version} < 1550 && 0%{?sle_version} < 150300
BuildRequires: cargo >= 1.59
BuildRequires: rust >= 1.59
BuildRequires: cargo >= 1.61
BuildRequires: rust >= 1.61
%else
# Newer sle/leap/tw use parallel versioned rust releases which have
# a different method for provides that we can use to request a
@ -117,8 +119,8 @@ BuildRequires: libcurl-devel
BuildRequires: libiw-devel
BuildRequires: libproxy-devel
BuildRequires: makeinfo
BuildRequires: mozilla-nspr-devel >= 4.34.1
BuildRequires: mozilla-nss-devel >= 3.82
BuildRequires: mozilla-nspr-devel >= 4.35
BuildRequires: mozilla-nss-devel >= 3.83
BuildRequires: nasm >= 2.14
BuildRequires: nodejs >= 10.22.1
%if 0%{?sle_version} >= 120000 && 0%{?sle_version} < 150000
@ -224,7 +226,7 @@ Patch22: mozilla-silence-no-return-type.patch
Patch23: mozilla-bmo531915.patch
Patch25: one_swizzle_to_rule_them_all.patch
Patch26: svg-rendering.patch
Patch27: mozilla-i686-build.patch
Patch27: mozilla-buildfixes.patch
# Firefox/browser
Patch101: firefox-kde.patch
Patch102: firefox-branded-icons.patch
@ -362,15 +364,16 @@ echo "" > .obsenv.sh
cat >> .obsenv.sh <<EOF
export CARGO_HOME=${RPM_BUILD_DIR}/%{srcname}-%{orig_version}/.cargo
export MOZ_SOURCE_CHANGESET=$RELEASE_TAG
export SOURCE_REPO=$RELEASE_REPO
export source_repo=$RELEASE_REPO
export MOZ_SOURCE_REPO=$RELEASE_REPO
export MOZ_BUILD_DATE=$RELEASE_TIMESTAMP
export MOZ_SOURCE_CHANGESET=\$RELEASE_TAG
export SOURCE_REPO=\$RELEASE_REPO
export source_repo=\$RELEASE_REPO
export MOZ_SOURCE_REPO=\$RELEASE_REPO
export MOZ_BUILD_DATE=\$RELEASE_TIMESTAMP
export MOZILLA_OFFICIAL=1
export BUILD_OFFICIAL=1
export MOZ_TELEMETRY_REPORTING=1
export MACH_USE_SYSTEM_PYTHON=1
export CFLAGS="%{optflags}"
%if 0%{?suse_version} < 1550 && 0%{?sle_version} <= 150400
export CC=gcc-11
%else
@ -378,23 +381,23 @@ export CC=gcc-11
export CC=gcc
export CXX=g++
%if 0%{?gcc_version:%{gcc_version}} >= 12
export CFLAGS="$CFLAGS -fimplicit-constexpr"
export CFLAGS="\$CFLAGS -fimplicit-constexpr"
%endif
%endif
%endif
%ifarch %arm %ix86
# Limit RAM usage during link
export LDFLAGS="${LDFLAGS} -Wl,--no-keep-memory -Wl,--reduce-memory-overheads"
export LDFLAGS="\$LDFLAGS -Wl,--no-keep-memory -Wl,--reduce-memory-overheads"
# A lie to prevent -Wl,--gc-sections being set which requires more memory than 32bit can offer
export GC_SECTIONS_BREAKS_DEBUG_RANGES=yes
%endif
export LDFLAGS="${LDFLAGS} -fPIC -Wl,-z,relro,-z,now"
export LDFLAGS="\$LDFLAGS -fPIC -Wl,-z,relro,-z,now"
%ifarch ppc64 ppc64le
%if 0%{?clang_build} == 0
export CFLAGS="$CFLAGS -mminimal-toc"
export CFLAGS="\$CFLAGS -mminimal-toc"
%endif
%endif
export CXXFLAGS="$CFLAGS"
export CXXFLAGS="\$CFLAGS"
export MOZCONFIG=$RPM_BUILD_DIR/mozconfig
EOF
# Done with env-variables.

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:f2fa1e03aecdd4dca0bcda94fd228d3a9ef3635862a2c140f8982d32ae7761e7
size 484942048

View File

@ -1,16 +0,0 @@
-----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEEQ2D+IQnEl2MYb44h6+QekPbxL20FAmNAVq8ACgkQ6+QekPbx
L20mJRAAqqiryKyEX4+ZwPJlq3UB3TLF/j9Qr1bl59ro/Wr6BRiqQh6er5zki4Or
m68m/wjTOzLq6zIIQxghbfRYMy8qaxsDYtumVgqccDT+e3sAwRUh0XXc3nnBZSQu
0jFBWaHGxVT8dDdd8JEYRNowIDPvNHzPr9ccyqsSZQlE4yTE95hbCxK4IGi/6mKn
IZOZyfyjYoyxmUTDJmYRE8RZRni7NVLKLc2Fodwv1N/v857K1OBdxGVTEATBEmQP
73vIV2rcxglzui/lpONZwhKB2hUR3ZsFPQpsNpilygFnuHhJ8/lQAmuJWf7lWPqp
qEfNTv2R+EHXsIXDd9nqspT7gf8krUJiMMLNKk1RJqLyeR34COqX0p4Sid4T9vTd
lcu9hqx8YmZnOlfsehImM3B/BsvJ1h5HnuMoR/8XnPiE8Qwdin1n8tPl3m37nFFj
F2gFobsZEF2wXas2RJzlOMPGlwbNmh8vnwbOuKk4fyrsVx/xoEuryFOGEj7BZMdC
2ZSkGDJeyathNm0U0z1lhq9+ACpXCShrWw8fjGeeEQ3pMZ3Do6HG7rGyvssnZ9fH
Hky2SCQsxIZCRzJnMEGyTVnU/VBOVbQVQtqzG3uVIzApRCzoaIMln+/0rwlLWYVq
a0IKVxtnM5JTboTzYvwz6/zFEJRFYL6AqZ+YrL7ZHhEnTq+HOhQ=
=6Mf3
-----END PGP SIGNATURE-----

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:1546ebfd9d5a814f17479ed626519ed69aa3c89c22c7fb1fe5c84e4d7e5d7e18
size 500449804

View File

@ -0,0 +1,16 @@
-----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEEQ2D+IQnEl2MYb44h6+QekPbxL20FAmNEQ88ACgkQ6+QekPbx
L20/3g/8DOr/EZxi/+FL/+5Q/PjJLsnXfpZng4Yrj5XIdZ654z7uWy62CR7A8ywF
Ka2PW9SYmsHHrzugHGQqi8ef/0OUDKtHarKgaLN8v2J7GoEg7kzJ/1Rm9JPe4GGm
GJNXq9bZMrCi2I/hG/YooLG7tEIbiVQYcgxgac3CD8VGn545i4p7y9Nu4ZuxRrI1
4C4v/9rjS0AYJ8V5X4siYq3L/SYVJYY0GLLULlQoX9i6jWB3uHbA48mxvPI4QfaK
tlT2D6uEwhRw+s5MeIwC+K8VF/xvNeON1YKoWEon36Bge+LVN1FlfcSRGxwNe/xL
SWQoMTSk02VBgAM3++N0f9e0Nd+Av2iRDV1oG0SicF5DG/0h2bxznksBquU0mOLm
vw4GHGRDHTwRVJ5bidfn/BsT/+CFfOkGhnldpDQ4dVp1S1pQMZwJADRBVbUQ4hgv
9X4GkLSBg1bJwyS2jtjjmPd3u8K0KxMk5EKrwWkFNqB4m9PzC6XPL3f5sUuFd6xN
Y7xZ61KhYNvMQofBiATlSu+u8YomMBmH1ynqsfZyoejXtdKh2slzTCTEGGoJ2SC7
RHiQeCmHrTF9Gp8Ta/ldLyBnASCyaN2j9+jDGRI+aztoHBq/EcxEBxWz7DZWlmpD
ZerYlKilmFLTENKAaucVDVxz10mg7Yeyd7Qzt8Uvg/BUMZmEYwE=
=IwTy
-----END PGP SIGNATURE-----

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:997e5ac1ac7ad322e7b27dbb1a2a11157681f88aab5f055097008c80fd537f96
size 49932256

3
l10n-106.0.tar.xz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:260dab6c8651c4e500aa4ce17e8826d6869015ad69e031810b5a3acd578ef0a4
size 49353156

View File

@ -1,11 +1,11 @@
# HG changeset patch
# Parent b5471d23321d16a0bacc25b7afd27d2e16adba1a
# Parent 37d8d8fc1d9e42887a736102ff9cdab24d7a9aa8
Taken from https://bugzilla.mozilla.org/show_bug.cgi?id=1504834
diff --git a/gfx/2d/DrawTargetSkia.cpp b/gfx/2d/DrawTargetSkia.cpp
--- a/gfx/2d/DrawTargetSkia.cpp
+++ b/gfx/2d/DrawTargetSkia.cpp
@@ -130,18 +130,17 @@ static IntRect CalculateSurfaceBounds(co
@@ -147,18 +147,17 @@ static IntRect CalculateSurfaceBounds(co
Rect sampledBounds = inverse.TransformBounds(*aBounds);
if (!sampledBounds.ToIntRect(&bounds)) {
return surfaceBounds;
@ -28,11 +28,11 @@ diff --git a/gfx/2d/DrawTargetSkia.cpp b/gfx/2d/DrawTargetSkia.cpp
diff --git a/gfx/2d/Types.h b/gfx/2d/Types.h
--- a/gfx/2d/Types.h
+++ b/gfx/2d/Types.h
@@ -84,25 +84,18 @@ enum class SurfaceFormat : int8_t {
@@ -87,25 +87,18 @@ enum class SurfaceFormat : int8_t {
Depth,
// This represents the unknown format.
UNKNOWN,
UNKNOWN, // TODO: Replace uses with Maybe<SurfaceFormat>.
// The following values are endian-independent synonyms. The _UINT32 suffix
// indicates that the name reflects the layout when viewed as a uint32_t

View File

@ -1,6 +1,6 @@
# HG changeset patch
# User Wolfgang Rosenauer <wr@rosenauer.org>
# Parent 63af48397aee6985bb8d711bd918a201e5c8c282
# Parent 39a0846a4f2df1c4669273933d74567a8774e1da
# References: bmo#1792159 - Add missing includes to AtomicOperationsGenerated.h
diff --git a/js/src/jit/GenerateAtomicOperations.py b/js/src/jit/GenerateAtomicOperations.py
@ -25,6 +25,28 @@ diff --git a/js/src/jit/GenerateAtomicOperations.py b/js/src/jit/GenerateAtomicO
} // namespace jit
} // namespace js
diff --git a/media/ffvpx/config_unix_aarch64.h b/media/ffvpx/config_unix_aarch64.h
--- a/media/ffvpx/config_unix_aarch64.h
+++ b/media/ffvpx/config_unix_aarch64.h
@@ -324,17 +324,17 @@
#define HAVE_SETCONSOLETEXTATTRIBUTE 0
#define HAVE_SETCONSOLECTRLHANDLER 0
#define HAVE_SETDLLDIRECTORY 0
#define HAVE_SETMODE 0
#define HAVE_SETRLIMIT 1
#define HAVE_SLEEP 0
#define HAVE_STRERROR_R 1
#define HAVE_SYSCONF 1
-#define HAVE_SYSCTL 1
+#define HAVE_SYSCTL 0
#define HAVE_USLEEP 1
#define HAVE_UTGETOSTYPEFROMSTRING 0
#define HAVE_VIRTUALALLOC 0
#define HAVE_WGLGETPROCADDRESS 0
#define HAVE_BCRYPT 0
#define HAVE_VAAPI_DRM 0
#define HAVE_VAAPI_X11 0
#define HAVE_VDPAU_X11 0
diff --git a/mozglue/misc/SIMD_avx2.cpp b/mozglue/misc/SIMD_avx2.cpp
--- a/mozglue/misc/SIMD_avx2.cpp
+++ b/mozglue/misc/SIMD_avx2.cpp

View File

@ -3,21 +3,21 @@
# Date 1558452408 -7200
# Tue May 21 17:26:48 2019 +0200
# Node ID 602e92722e765a3c238d3b96b26c0c8063b5eeb4
# Parent 136e1f2c44a3099b3e49a576fa62c8ad77aa431e
# Parent 263ccc06617bef4b8ef891eec54995190d5d5df3
[mq]: mozilla-s390-context.patch
diff --git a/js/src/wasm/WasmSignalHandlers.cpp b/js/src/wasm/WasmSignalHandlers.cpp
--- a/js/src/wasm/WasmSignalHandlers.cpp
+++ b/js/src/wasm/WasmSignalHandlers.cpp
@@ -157,16 +157,20 @@ using mozilla::DebugOnly;
# define R32_sig(p) ((p)->uc_mcontext.gp_regs[32])
# endif
# if defined(__linux__) && defined(__loongarch__)
# define EPC_sig(p) ((p)->uc_mcontext.pc)
# define RRA_sig(p) ((p)->uc_mcontext.gregs[1])
@@ -163,16 +163,20 @@ using mozilla::DebugOnly;
# define RSP_sig(p) ((p)->uc_mcontext.gregs[3])
# define RFP_sig(p) ((p)->uc_mcontext.gregs[22])
# endif
# if defined(__sun__) && defined(__sparc__)
# define PC_sig(p) ((p)->uc_mcontext.gregs[REG_PC])
# define FP_sig(p) ((p)->uc_mcontext.gregs[REG_FPRS])
# define SP_sig(p) ((p)->uc_mcontext.gregs[REG_SP])
# endif
+# if defined(__linux__) && defined(__s390x__)
+# define GR_sig(p,x) ((p)->uc_mcontext.gregs[x])
+# define PSWa_sig(p) ((p)->uc_mcontext.psw.addr)
@ -30,7 +30,7 @@ diff --git a/js/src/wasm/WasmSignalHandlers.cpp b/js/src/wasm/WasmSignalHandlers
# define RSP_sig(p) ((p)->uc_mcontext.__gregs[_REG_RSP])
# define RBP_sig(p) ((p)->uc_mcontext.__gregs[_REG_RBP])
# define R11_sig(p) ((p)->uc_mcontext.__gregs[_REG_R11])
@@ -399,16 +403,20 @@ struct macos_aarch64_context {
@@ -405,16 +409,20 @@ struct macos_aarch64_context {
# define PC_sig(p) R32_sig(p)
# define SP_sig(p) R01_sig(p)
# define FP_sig(p) R01_sig(p)

View File

@ -1,10 +1,10 @@
# HG changeset patch
# Parent 602c790a8615e43dbfe8ce15a30d020e0fb4f5e7
# Parent ccd8f974707cba440cffeb0c66b5bcc0cda73c63
diff --git a/Cargo.lock b/Cargo.lock
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -2298,18 +2298,16 @@ name = "glsl-to-cxx"
@@ -2296,18 +2296,16 @@ name = "glsl-to-cxx"
version = "0.1.0"
dependencies = [
"glsl",
@ -26,7 +26,7 @@ diff --git a/Cargo.lock b/Cargo.lock
diff --git a/Cargo.toml b/Cargo.toml
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -146,16 +146,17 @@ async-task = { git = "https://github.com
@@ -143,16 +143,17 @@ async-task = { git = "https://github.com
chardetng = { git = "https://github.com/hsivonen/chardetng", rev="3484d3e3ebdc8931493aa5df4d7ee9360a90e76b" }
chardetng_c = { git = "https://github.com/hsivonen/chardetng_c", rev="ed8a4c6f900a90d4dbc1d64b856e61490a1c3570" }
coremidi = { git = "https://github.com/chris-zen/coremidi.git", rev="fc68464b5445caf111e41f643a2e69ccce0b4f83" }
@ -38,11 +38,11 @@ diff --git a/Cargo.toml b/Cargo.toml
+glslopt = { path = "third_party/rust/glslopt/" }
# application-services overrides to make updating them all simpler.
interrupt-support = { git = "https://github.com/mozilla/application-services", rev = "2689788cecf24c385e6b7440e3aa1a89c511f14a" }
sql-support = { git = "https://github.com/mozilla/application-services", rev = "2689788cecf24c385e6b7440e3aa1a89c511f14a" }
sync15-traits = { git = "https://github.com/mozilla/application-services", rev = "2689788cecf24c385e6b7440e3aa1a89c511f14a" }
viaduct = { git = "https://github.com/mozilla/application-services", rev = "2689788cecf24c385e6b7440e3aa1a89c511f14a" }
webext-storage = { git = "https://github.com/mozilla/application-services", rev = "2689788cecf24c385e6b7440e3aa1a89c511f14a" }
interrupt-support = { git = "https://github.com/mozilla/application-services", rev = "fb1c78b13c27b5db1fd5458b8c2d8f433855dd61" }
sql-support = { git = "https://github.com/mozilla/application-services", rev = "fb1c78b13c27b5db1fd5458b8c2d8f433855dd61" }
sync15-traits = { git = "https://github.com/mozilla/application-services", rev = "fb1c78b13c27b5db1fd5458b8c2d8f433855dd61" }
viaduct = { git = "https://github.com/mozilla/application-services", rev = "fb1c78b13c27b5db1fd5458b8c2d8f433855dd61" }
webext-storage = { git = "https://github.com/mozilla/application-services", rev = "fb1c78b13c27b5db1fd5458b8c2d8f433855dd61" }
diff --git a/gfx/skia/skia/include/codec/SkEncodedOrigin.h b/gfx/skia/skia/include/codec/SkEncodedOrigin.h
--- a/gfx/skia/skia/include/codec/SkEncodedOrigin.h
@ -1943,29 +1943,16 @@ diff --git a/intl/icu/source/i18n/number_rounding.cpp b/intl/icu/source/i18n/num
diff --git a/third_party/libwebrtc/api/adaptation/resource.cc b/third_party/libwebrtc/api/adaptation/resource.cc
--- a/third_party/libwebrtc/api/adaptation/resource.cc
+++ b/third_party/libwebrtc/api/adaptation/resource.cc
@@ -4,25 +4,29 @@
* Use of this source code is governed by a BSD-style license
* that can be found in the LICENSE file in the root of the source
* tree. An additional intellectual property rights grant can be found
* in the file PATENTS. All contributing project authors may
* be found in the AUTHORS file in the root of the source tree.
*/
#include "api/adaptation/resource.h"
+#include "rtc_base/checks.h"
namespace webrtc {
@@ -17,16 +17,17 @@ namespace webrtc {
const char* ResourceUsageStateToString(ResourceUsageState usage_state) {
switch (usage_state) {
case ResourceUsageState::kOveruse:
return "kOveruse";
case ResourceUsageState::kUnderuse:
return "kUnderuse";
+ default:
+ RTC_NOTREACHED();
+ return "";
}
RTC_CHECK_NOTREACHED();
+ return nullptr;
}
ResourceListener::~ResourceListener() {}
@ -1973,22 +1960,20 @@ diff --git a/third_party/libwebrtc/api/adaptation/resource.cc b/third_party/libw
Resource::Resource() {}
Resource::~Resource() {}
diff --git a/third_party/libwebrtc/api/rtp_parameters.cc b/third_party/libwebrtc/api/rtp_parameters.cc
--- a/third_party/libwebrtc/api/rtp_parameters.cc
+++ b/third_party/libwebrtc/api/rtp_parameters.cc
@@ -24,16 +24,19 @@ const char* DegradationPreferenceToStrin
case DegradationPreference::DISABLED:
return "disabled";
@@ -27,16 +27,17 @@ const char* DegradationPreferenceToStrin
case DegradationPreference::MAINTAIN_FRAMERATE:
return "maintain-framerate";
case DegradationPreference::MAINTAIN_RESOLUTION:
return "maintain-resolution";
case DegradationPreference::BALANCED:
return "balanced";
+ default:
+ RTC_NOTREACHED();
+ return "";
}
RTC_CHECK_NOTREACHED();
+ return "";
}
const double kDefaultBitratePriority = 1.0;
@ -1996,22 +1981,42 @@ diff --git a/third_party/libwebrtc/api/rtp_parameters.cc b/third_party/libwebrtc
RtcpFeedback::RtcpFeedback() = default;
RtcpFeedback::RtcpFeedback(RtcpFeedbackType type) : type(type) {}
RtcpFeedback::RtcpFeedback(RtcpFeedbackType type,
RtcpFeedbackMessageType message_type)
diff --git a/third_party/libwebrtc/api/video/video_frame_buffer.cc b/third_party/libwebrtc/api/video/video_frame_buffer.cc
--- a/third_party/libwebrtc/api/video/video_frame_buffer.cc
+++ b/third_party/libwebrtc/api/video/video_frame_buffer.cc
@@ -87,16 +87,18 @@ const char* VideoFrameBufferTypeToString
return "kI422";
case VideoFrameBuffer::Type::kI010:
return "kI010";
case VideoFrameBuffer::Type::kNV12:
return "kNV12";
default:
RTC_DCHECK_NOTREACHED();
}
+ RTC_DCHECK_NOTREACHED();
+ return nullptr;
}
int I420BufferInterface::ChromaWidth() const {
return (width() + 1) / 2;
}
int I420BufferInterface::ChromaHeight() const {
return (height() + 1) / 2;
diff --git a/third_party/libwebrtc/api/video_codecs/video_codec.cc b/third_party/libwebrtc/api/video_codecs/video_codec.cc
--- a/third_party/libwebrtc/api/video_codecs/video_codec.cc
+++ b/third_party/libwebrtc/api/video_codecs/video_codec.cc
@@ -114,16 +114,19 @@ const char* CodecTypeToPayloadString(Vid
case kVideoCodecAV1:
return kPayloadNameAv1;
@@ -117,16 +117,17 @@ const char* CodecTypeToPayloadString(Vid
case kVideoCodecH264:
return kPayloadNameH264;
case kVideoCodecMultiplex:
return kPayloadNameMultiplex;
case kVideoCodecGeneric:
return kPayloadNameGeneric;
+ default:
+ RTC_NOTREACHED();
+ return "";
}
RTC_CHECK_NOTREACHED();
+ return "";
}
VideoCodecType PayloadStringToCodecType(const std::string& name) {
@ -2019,22 +2024,20 @@ diff --git a/third_party/libwebrtc/api/video_codecs/video_codec.cc b/third_party
return kVideoCodecVP8;
if (absl::EqualsIgnoreCase(name, kPayloadNameVp9))
return kVideoCodecVP9;
if (absl::EqualsIgnoreCase(name, kPayloadNameAv1) ||
diff --git a/third_party/libwebrtc/api/video_codecs/video_encoder_software_fallback_wrapper.cc b/third_party/libwebrtc/api/video_codecs/video_encoder_software_fallback_wrapper.cc
--- a/third_party/libwebrtc/api/video_codecs/video_encoder_software_fallback_wrapper.cc
+++ b/third_party/libwebrtc/api/video_codecs/video_encoder_software_fallback_wrapper.cc
@@ -156,16 +156,19 @@ class VideoEncoderSoftwareFallbackWrappe
<< "Trying to access encoder in uninitialized fallback wrapper.";
// Return main encoder to preserve previous behavior.
ABSL_FALLTHROUGH_INTENDED;
@@ -158,16 +158,17 @@ class VideoEncoderSoftwareFallbackWrappe
[[fallthrough]];
case EncoderState::kMainEncoderUsed:
return encoder_.get();
case EncoderState::kFallbackDueToFailure:
case EncoderState::kForcedFallback:
return fallback_encoder_.get();
+ default:
+ RTC_NOTREACHED();
+ return nullptr;
}
RTC_CHECK_NOTREACHED();
+ return nullptr;
}
// Updates encoder with last observed parameters, such as callbacks, rates,
@ -2042,20 +2045,19 @@ diff --git a/third_party/libwebrtc/api/video_codecs/video_encoder_software_fallb
void PrimeEncoder(VideoEncoder* encoder) const;
// Settings used in the last InitEncode call and used if a dynamic fallback to
@@ -334,16 +337,19 @@ int32_t VideoEncoderSoftwareFallbackWrap
case EncoderState::kUninitialized:
return WEBRTC_VIDEO_CODEC_ERROR;
// software is required.
@@ -338,16 +339,17 @@ int32_t VideoEncoderSoftwareFallbackWrap
case EncoderState::kMainEncoderUsed: {
return EncodeWithMainEncoder(frame, frame_types);
}
case EncoderState::kFallbackDueToFailure:
case EncoderState::kForcedFallback:
return fallback_encoder_->Encode(frame, frame_types);
+ default:
+ RTC_NOTREACHED();
}
RTC_CHECK_NOTREACHED();
+ return WEBRTC_VIDEO_CODEC_ERROR;
}
}
int32_t VideoEncoderSoftwareFallbackWrapper::EncodeWithMainEncoder(
const VideoFrame& frame,
const std::vector<VideoFrameType>* frame_types) {
@ -2065,19 +2067,16 @@ diff --git a/third_party/libwebrtc/api/video_codecs/video_encoder_software_fallb
diff --git a/third_party/libwebrtc/call/adaptation/video_stream_adapter.cc b/third_party/libwebrtc/call/adaptation/video_stream_adapter.cc
--- a/third_party/libwebrtc/call/adaptation/video_stream_adapter.cc
+++ b/third_party/libwebrtc/call/adaptation/video_stream_adapter.cc
@@ -156,16 +156,19 @@ const char* Adaptation::StatusToString(A
case Adaptation::Status::kAwaitingPreviousAdaptation:
return "kAwaitingPreviousAdaptation";
@@ -163,16 +163,17 @@ const char* Adaptation::StatusToString(A
case Status::kInsufficientInput:
return "kInsufficientInput";
case Status::kAdaptationDisabled:
return "kAdaptationDisabled";
case Status::kRejectedByConstraint:
return "kRejectedByConstraint";
+ default:
+ RTC_NOTREACHED();
+ return "";
}
RTC_CHECK_NOTREACHED();
+ return "";
}
Adaptation::Adaptation(int validation_id,
@ -2085,19 +2084,17 @@ diff --git a/third_party/libwebrtc/call/adaptation/video_stream_adapter.cc b/thi
VideoAdaptationCounters counters,
VideoStreamInputState input_state)
: validation_id_(validation_id),
@@ -375,16 +378,19 @@ VideoStreamAdapter::RestrictionsOrState
return IncreaseResolution(input_state, current_restrictions_);
}
status_(Status::kValid),
@@ -385,16 +386,17 @@ VideoStreamAdapter::RestrictionsOrState
case DegradationPreference::MAINTAIN_RESOLUTION: {
// Scale up framerate.
return IncreaseFramerate(input_state, current_restrictions_);
}
case DegradationPreference::DISABLED:
return Adaptation::Status::kAdaptationDisabled;
+ default:
+ RTC_NOTREACHED();
+ return Adaptation::Status::kAdaptationDisabled;
}
RTC_CHECK_NOTREACHED();
+ return Adaptation::Status::kAdaptationDisabled;
}
Adaptation VideoStreamAdapter::GetAdaptationDown() {
@ -2105,19 +2102,17 @@ diff --git a/third_party/libwebrtc/call/adaptation/video_stream_adapter.cc b/thi
VideoStreamInputState input_state = input_state_provider_->InputState();
++adaptation_validation_id_;
RestrictionsOrState restrictions_or_state =
@@ -454,16 +460,19 @@ VideoStreamAdapter::GetAdaptationDownSte
case DegradationPreference::MAINTAIN_FRAMERATE: {
return DecreaseResolution(input_state, current_restrictions);
GetAdaptationDownStep(input_state, current_restrictions_);
@@ -467,16 +469,17 @@ VideoStreamAdapter::GetAdaptationDownSte
}
case DegradationPreference::MAINTAIN_RESOLUTION: {
return DecreaseFramerate(input_state, current_restrictions);
}
case DegradationPreference::DISABLED:
return Adaptation::Status::kAdaptationDisabled;
+ default:
+ RTC_NOTREACHED();
+ return Adaptation::Status::kAdaptationDisabled;
}
RTC_CHECK_NOTREACHED();
+ return Adaptation::Status::kAdaptationDisabled;
}
VideoStreamAdapter::RestrictionsOrState VideoStreamAdapter::DecreaseResolution(
@ -2125,30 +2120,30 @@ diff --git a/third_party/libwebrtc/call/adaptation/video_stream_adapter.cc b/thi
const RestrictionsWithCounters& current_restrictions) {
int target_pixels =
GetLowerResolutionThan(input_state.frame_size_pixels().value());
@@ -594,16 +603,18 @@ Adaptation VideoStreamAdapter::GetAdaptD
// Use single active stream if set, this stream could be lower than the input.
@@ -620,16 +623,18 @@ Adaptation VideoStreamAdapter::GetAdaptD
case DegradationPreference::MAINTAIN_FRAMERATE:
return GetAdaptationDown();
case DegradationPreference::BALANCED: {
return RestrictionsOrStateToAdaptation(
GetAdaptDownResolutionStepForBalanced(input_state), input_state);
}
default:
RTC_NOTREACHED();
}
RTC_CHECK_NOTREACHED();
+ return RestrictionsOrStateToAdaptation(
+ Adaptation::Status::kAdaptationDisabled, input_state);
}
}
VideoStreamAdapter::RestrictionsOrState
VideoStreamAdapter::GetAdaptDownResolutionStepForBalanced(
const VideoStreamInputState& input_state) const {
// Adapt twice if the first adaptation did not decrease resolution.
auto first_step = GetAdaptationDownStep(input_state, current_restrictions_);
if (!absl::holds_alternative<RestrictionsWithCounters>(first_step)) {
diff --git a/third_party/libwebrtc/call/simulated_network.cc b/third_party/libwebrtc/call/simulated_network.cc
--- a/third_party/libwebrtc/call/simulated_network.cc
+++ b/third_party/libwebrtc/call/simulated_network.cc
@@ -72,16 +72,18 @@ bool CoDelSimulation::DropDequeuedPacket
if (queue_size - packet_size < kMaxPacketSize)
@@ -73,16 +73,17 @@ bool CoDelSimulation::DropDequeuedPacket
state_ = kPending;
last_drop_at_ = next_drop_at;
++drop_count_;
@ -2156,7 +2151,7 @@ diff --git a/third_party/libwebrtc/call/simulated_network.cc b/third_party/libwe
}
return false;
}
+ RTC_NOTREACHED();
RTC_CHECK_NOTREACHED();
+ return false;
}
@ -2169,19 +2164,16 @@ diff --git a/third_party/libwebrtc/call/simulated_network.cc b/third_party/libwe
diff --git a/third_party/libwebrtc/call/video_send_stream.cc b/third_party/libwebrtc/call/video_send_stream.cc
--- a/third_party/libwebrtc/call/video_send_stream.cc
+++ b/third_party/libwebrtc/call/video_send_stream.cc
@@ -22,16 +22,19 @@ namespace {
const char* StreamTypeToString(VideoSendStream::StreamStats::StreamType type) {
switch (type) {
@@ -25,16 +25,17 @@ const char* StreamTypeToString(VideoSend
case VideoSendStream::StreamStats::StreamType::kMedia:
return "media";
case VideoSendStream::StreamStats::StreamType::kRtx:
return "rtx";
case VideoSendStream::StreamStats::StreamType::kFlexfec:
return "flexfec";
+ default:
+ RTC_NOTREACHED();
+ return "";
}
RTC_CHECK_NOTREACHED();
+ return "";
}
} // namespace
@ -2189,62 +2181,76 @@ diff --git a/third_party/libwebrtc/call/video_send_stream.cc b/third_party/libwe
VideoSendStream::StreamStats::StreamStats() = default;
VideoSendStream::StreamStats::~StreamStats() = default;
diff --git a/third_party/libwebrtc/modules/audio_coding/neteq/decision_logic.cc b/third_party/libwebrtc/modules/audio_coding/neteq/decision_logic.cc
--- a/third_party/libwebrtc/modules/audio_coding/neteq/decision_logic.cc
+++ b/third_party/libwebrtc/modules/audio_coding/neteq/decision_logic.cc
@@ -347,17 +347,17 @@ NetEq::Operation DecisionLogic::FuturePa
return NetEq::Operation::kNormal;
std::string VideoSendStream::StreamStats::ToString() const {
diff --git a/third_party/libwebrtc/modules/audio_processing/agc/clipping_predictor.cc b/third_party/libwebrtc/modules/audio_processing/agc/clipping_predictor.cc
--- a/third_party/libwebrtc/modules/audio_processing/agc/clipping_predictor.cc
+++ b/third_party/libwebrtc/modules/audio_processing/agc/clipping_predictor.cc
@@ -373,11 +373,12 @@ std::unique_ptr<ClippingPredictor> Creat
/*adaptive_step_estimation=*/true);
case ClippingPredictorMode::kFixedStepClippingPeakPrediction:
return std::make_unique<ClippingPeakPredictor>(
num_channels, config.window_length, config.reference_window_length,
config.reference_window_delay, config.clipping_threshold,
/*adaptive_step_estimation=*/false);
}
RTC_DCHECK_NOTREACHED();
+ return nullptr;
}
// If previous was comfort noise, then no merge is needed.
if (prev_mode == NetEq::Mode::kRfc3389Cng ||
prev_mode == NetEq::Mode::kCodecInternalCng) {
size_t cur_size_samples =
estimate_dtx_delay_
- ? cur_size_samples = span_samples_in_packet_buffer
+ ? span_samples_in_packet_buffer
: num_packets_in_packet_buffer * decoder_frame_length;
// Target level is in number of packets in Q8.
const size_t target_level_samples =
(delay_manager_->TargetLevel() * packet_length_samples_) >> 8;
const bool generated_enough_noise =
static_cast<uint32_t>(generated_noise_samples + target_timestamp) >=
available_timestamp;
} // namespace webrtc
diff --git a/third_party/libwebrtc/modules/audio_processing/agc2/rnn_vad/rnn_fc.cc b/third_party/libwebrtc/modules/audio_processing/agc2/rnn_vad/rnn_fc.cc
--- a/third_party/libwebrtc/modules/audio_processing/agc2/rnn_vad/rnn_fc.cc
+++ b/third_party/libwebrtc/modules/audio_processing/agc2/rnn_vad/rnn_fc.cc
@@ -54,16 +54,18 @@ std::vector<float> PreprocessWeights(rtc
rtc::FunctionView<float(float)> GetActivationFunction(
ActivationFunction activation_function) {
switch (activation_function) {
case ActivationFunction::kTansigApproximated:
return ::rnnoise::TansigApproximated;
case ActivationFunction::kSigmoidApproximated:
return ::rnnoise::SigmoidApproximated;
}
+ // supposed to be never reached apparently therefore returning bogus
+ return ::rnnoise::TansigApproximated;
}
} // namespace
FullyConnectedLayer::FullyConnectedLayer(
const int input_size,
const int output_size,
const rtc::ArrayView<const int8_t> bias,
diff --git a/third_party/libwebrtc/modules/audio_processing/audio_processing_impl.cc b/third_party/libwebrtc/modules/audio_processing/audio_processing_impl.cc
--- a/third_party/libwebrtc/modules/audio_processing/audio_processing_impl.cc
+++ b/third_party/libwebrtc/modules/audio_processing/audio_processing_impl.cc
@@ -108,16 +108,19 @@ GainControl::Mode Agc1ConfigModeToInterf
using Agc1Config = AudioProcessing::Config::GainController1;
switch (mode) {
@@ -116,16 +116,17 @@ GainControl::Mode Agc1ConfigModeToInterf
case Agc1Config::kAdaptiveAnalog:
return GainControl::kAdaptiveAnalog;
case Agc1Config::kAdaptiveDigital:
return GainControl::kAdaptiveDigital;
case Agc1Config::kFixedDigital:
return GainControl::kFixedDigital;
+ default:
+ RTC_NOTREACHED();
}
RTC_CHECK_NOTREACHED();
+ return GainControl::kAdaptiveAnalog;
}
bool MinimizeProcessingForUnusedOutput() {
return !field_trial::IsEnabled("WebRTC-MutedStateKillSwitch");
}
// Maximum lengths that frame of samples being passed from the render side to
// the capture side can have (does not apply to AEC3).
static const size_t kMaxAllowedValuesOfSamplesPerBand = 160;
static const size_t kMaxAllowedValuesOfSamplesPerFrame = 480;
@@ -1847,16 +1850,17 @@ void AudioProcessingImpl::InitializeNois
@@ -1921,16 +1922,17 @@ void AudioProcessingImpl::InitializeNois
case NoiseSuppresionConfig::kModerate:
return NsConfig::SuppressionLevel::k12dB;
case NoiseSuppresionConfig::kHigh:
return NsConfig::SuppressionLevel::k18dB;
case NoiseSuppresionConfig::kVeryHigh:
return NsConfig::SuppressionLevel::k21dB;
default:
RTC_NOTREACHED();
+ return NsConfig::SuppressionLevel::k6dB;
}
RTC_CHECK_NOTREACHED();
+ return NsConfig::SuppressionLevel::k6dB;
};
NsConfig cfg;
@ -2252,115 +2258,70 @@ diff --git a/third_party/libwebrtc/modules/audio_processing/audio_processing_imp
submodules_.noise_suppressor = std::make_unique<NoiseSuppressor>(
cfg, proc_sample_rate_hz(), num_proc_channels());
}
}
diff --git a/third_party/libwebrtc/modules/audio_processing/include/audio_processing.cc b/third_party/libwebrtc/modules/audio_processing/include/audio_processing.cc
--- a/third_party/libwebrtc/modules/audio_processing/include/audio_processing.cc
+++ b/third_party/libwebrtc/modules/audio_processing/include/audio_processing.cc
@@ -22,38 +22,47 @@ std::string NoiseSuppressionLevelToStrin
case AudioProcessing::Config::NoiseSuppression::Level::kLow:
return "Low";
@@ -27,28 +27,30 @@ std::string NoiseSuppressionLevelToStrin
case AudioProcessing::Config::NoiseSuppression::Level::kModerate:
return "Moderate";
case AudioProcessing::Config::NoiseSuppression::Level::kHigh:
return "High";
case AudioProcessing::Config::NoiseSuppression::Level::kVeryHigh:
return "VeryHigh";
+ default:
+ RTC_NOTREACHED();
}
RTC_CHECK_NOTREACHED();
+ return "";
}
}
std::string GainController1ModeToString(
const AudioProcessing::Config::GainController1::Mode& mode) {
std::string GainController1ModeToString(const Agc1Config::Mode& mode) {
switch (mode) {
case AudioProcessing::Config::GainController1::Mode::kAdaptiveAnalog:
case Agc1Config::Mode::kAdaptiveAnalog:
return "AdaptiveAnalog";
case AudioProcessing::Config::GainController1::Mode::kAdaptiveDigital:
case Agc1Config::Mode::kAdaptiveDigital:
return "AdaptiveDigital";
case AudioProcessing::Config::GainController1::Mode::kFixedDigital:
case Agc1Config::Mode::kFixedDigital:
return "FixedDigital";
+ default:
+ RTC_NOTREACHED();
}
RTC_CHECK_NOTREACHED();
+ return "";
}
}
std::string GainController2LevelEstimatorToString(
const AudioProcessing::Config::GainController2::LevelEstimator& level) {
switch (level) {
case AudioProcessing::Config::GainController2::LevelEstimator::kRms:
return "Rms";
case AudioProcessing::Config::GainController2::LevelEstimator::kPeak:
return "Peak";
+ default:
+ RTC_NOTREACHED();
+ return "";
}
}
int GetDefaultMaxInternalRate() {
#ifdef WEBRTC_ARCH_ARM_FAMILY
return 32000;
#else
return 48000;
diff --git a/third_party/libwebrtc/modules/pacing/pacing_controller.cc b/third_party/libwebrtc/modules/pacing/pacing_controller.cc
--- a/third_party/libwebrtc/modules/pacing/pacing_controller.cc
+++ b/third_party/libwebrtc/modules/pacing/pacing_controller.cc
@@ -78,16 +78,19 @@ int GetPriorityForType(RtpPacketMediaTyp
// Video has "normal" priority, in the old speak.
// Send redundancy concurrently to video. If it is delayed it might have a
// lower chance of being useful.
return kFirstPriority + 3;
case RtpPacketMediaType::kPadding:
// Packets that are in themselves likely useless, only sent to keep the
// BWE high.
return kFirstPriority + 4;
+ default:
+ RTC_NOTREACHED();
+ return -1;
}
}
} // namespace
const TimeDelta PacingController::kMaxExpectedQueueLength =
TimeDelta::Millis(2000);
const float PacingController::kDefaultPaceMultiplier = 2.5f;
constexpr int AudioProcessing::kNativeSampleRatesHz[];
void CustomProcessing::SetRuntimeSetting(
AudioProcessing::RuntimeSetting setting) {}
diff --git a/third_party/libwebrtc/modules/rtp_rtcp/source/create_video_rtp_depacketizer.cc b/third_party/libwebrtc/modules/rtp_rtcp/source/create_video_rtp_depacketizer.cc
--- a/third_party/libwebrtc/modules/rtp_rtcp/source/create_video_rtp_depacketizer.cc
+++ b/third_party/libwebrtc/modules/rtp_rtcp/source/create_video_rtp_depacketizer.cc
@@ -31,12 +31,15 @@ std::unique_ptr<VideoRtpDepacketizer> Cr
return std::make_unique<VideoRtpDepacketizerVp8>();
case kVideoCodecVP9:
@@ -33,11 +33,12 @@ std::unique_ptr<VideoRtpDepacketizer> Cr
return std::make_unique<VideoRtpDepacketizerVp9>();
case kVideoCodecAV1:
return std::make_unique<VideoRtpDepacketizerAv1>();
case kVideoCodecGeneric:
case kVideoCodecMultiplex:
return std::make_unique<VideoRtpDepacketizerGeneric>();
+ default:
+ RTC_NOTREACHED();
+ return nullptr;
}
RTC_CHECK_NOTREACHED();
+ return nullptr;
}
} // namespace webrtc
diff --git a/third_party/libwebrtc/modules/rtp_rtcp/source/rtp_sender.cc b/third_party/libwebrtc/modules/rtp_rtcp/source/rtp_sender.cc
--- a/third_party/libwebrtc/modules/rtp_rtcp/source/rtp_sender.cc
+++ b/third_party/libwebrtc/modules/rtp_rtcp/source/rtp_sender.cc
@@ -125,16 +125,19 @@ bool IsNonVolatile(RTPExtensionType type
case kRtpExtensionNone:
case kRtpExtensionNumberOfExtensions:
RTC_NOTREACHED();
return false;
@@ -132,16 +132,17 @@ bool IsNonVolatile(RTPExtensionType type
#if defined(WEBRTC_MOZILLA_BUILD)
case kRtpExtensionCsrcAudioLevel:
// TODO: Mozilla implement for CsrcAudioLevel
RTC_CHECK(false);
return false;
+ default:
+ RTC_NOTREACHED();
+ return false;
#endif
}
RTC_CHECK_NOTREACHED();
+ return false;
}
bool HasBweExtension(const RtpHeaderExtensionMap& extensions_map) {
@ -2368,22 +2329,20 @@ diff --git a/third_party/libwebrtc/modules/rtp_rtcp/source/rtp_sender.cc b/third
extensions_map.IsRegistered(kRtpExtensionTransportSequenceNumber02) ||
extensions_map.IsRegistered(kRtpExtensionAbsoluteSendTime) ||
extensions_map.IsRegistered(kRtpExtensionTransmissionTimeOffset);
}
diff --git a/third_party/libwebrtc/modules/rtp_rtcp/source/rtp_sender_audio.cc b/third_party/libwebrtc/modules/rtp_rtcp/source/rtp_sender_audio.cc
--- a/third_party/libwebrtc/modules/rtp_rtcp/source/rtp_sender_audio.cc
+++ b/third_party/libwebrtc/modules/rtp_rtcp/source/rtp_sender_audio.cc
@@ -40,16 +40,19 @@ namespace {
const char* FrameTypeToString(AudioFrameType frame_type) {
switch (frame_type) {
@@ -42,16 +42,17 @@ const char* FrameTypeToString(AudioFrame
case AudioFrameType::kEmptyFrame:
return "empty";
case AudioFrameType::kAudioFrameSpeech:
return "audio_speech";
case AudioFrameType::kAudioFrameCN:
return "audio_cn";
+ default:
+ RTC_NOTREACHED();
+ return "";
}
RTC_CHECK_NOTREACHED();
+ return "";
}
#endif
@ -2391,22 +2350,20 @@ diff --git a/third_party/libwebrtc/modules/rtp_rtcp/source/rtp_sender_audio.cc b
"WebRTC-IncludeCaptureClockOffset";
} // namespace
diff --git a/third_party/libwebrtc/modules/video_coding/codecs/vp8/temporal_layers_checker.cc b/third_party/libwebrtc/modules/video_coding/codecs/vp8/temporal_layers_checker.cc
--- a/third_party/libwebrtc/modules/video_coding/codecs/vp8/temporal_layers_checker.cc
+++ b/third_party/libwebrtc/modules/video_coding/codecs/vp8/temporal_layers_checker.cc
@@ -23,16 +23,19 @@ TemporalLayersChecker::CreateTemporalLay
int num_temporal_layers) {
switch (type) {
@@ -25,16 +25,17 @@ TemporalLayersChecker::CreateTemporalLay
case Vp8TemporalLayersType::kFixedPattern:
return std::make_unique<DefaultTemporalLayersChecker>(
num_temporal_layers);
case Vp8TemporalLayersType::kBitrateDynamic:
// Conference mode temporal layering for screen content in base stream.
return std::make_unique<TemporalLayersChecker>(num_temporal_layers);
+ default:
+ RTC_NOTREACHED();
+ return nullptr;
}
RTC_CHECK_NOTREACHED();
+ return nullptr;
}
TemporalLayersChecker::TemporalLayersChecker(int num_temporal_layers)
@ -2414,29 +2371,28 @@ diff --git a/third_party/libwebrtc/modules/video_coding/codecs/vp8/temporal_laye
sequence_number_(0),
last_sync_sequence_number_(0),
last_tl0_sequence_number_(0) {}
diff --git a/third_party/libwebrtc/video/adaptation/video_stream_encoder_resource_manager.cc b/third_party/libwebrtc/video/adaptation/video_stream_encoder_resource_manager.cc
--- a/third_party/libwebrtc/video/adaptation/video_stream_encoder_resource_manager.cc
+++ b/third_party/libwebrtc/video/adaptation/video_stream_encoder_resource_manager.cc
@@ -49,16 +49,19 @@ bool IsFramerateScalingEnabled(Degradati
}
@@ -58,16 +58,17 @@ bool IsFramerateScalingEnabled(Degradati
std::string ToString(VideoAdaptationReason reason) {
switch (reason) {
case VideoAdaptationReason::kQuality:
return "quality";
case VideoAdaptationReason::kCpu:
return "cpu";
+ default:
+ RTC_NOTREACHED();
}
RTC_CHECK_NOTREACHED();
+ return "";
}
}
} // namespace
class VideoStreamEncoderResourceManager::InitialFrameDropper {
public:
explicit InitialFrameDropper(
std::vector<bool> GetActiveLayersFlags(const VideoCodec& codec) {
std::vector<bool> flags;
if (codec.codecType == VideoCodecType::kVideoCodecVP9) {
flags.resize(codec.VP9().numberOfSpatialLayers);
for (size_t i = 0; i < flags.size(); ++i) {
flags[i] = codec.spatialLayers[i].active;
diff --git a/third_party/rust/glslopt/glsl-optimizer/src/compiler/glsl/ast_to_hir.cpp b/third_party/rust/glslopt/glsl-optimizer/src/compiler/glsl/ast_to_hir.cpp
--- a/third_party/rust/glslopt/glsl-optimizer/src/compiler/glsl/ast_to_hir.cpp
+++ b/third_party/rust/glslopt/glsl-optimizer/src/compiler/glsl/ast_to_hir.cpp

View File

@ -1,10 +1,10 @@
PRODUCT="firefox"
CHANNEL="release"
VERSION="105.0.3"
VERSION="106.0"
VERSION_SUFFIX=""
PREV_VERSION="105.0.2"
PREV_VERSION="105.0.3"
PREV_VERSION_SUFFIX=""
#SKIP_LOCALES="" # Uncomment to skip l10n and compare-locales-generation
RELEASE_REPO="https://hg.mozilla.org/releases/mozilla-release"
RELEASE_TAG="5a2af3ed86a64618b34bde6f427f2132b13f6bed"
RELEASE_TIMESTAMP="20221007134813"
RELEASE_TAG="eecea05aff4d09b70d13842a8e07160f04ac0349"
RELEASE_TIMESTAMP="20221010110315"