git: c82dfb197051 - 2021Q2 - www/chromium: attempt to make it work with Microsoft Teams

Rene Ladan rene at FreeBSD.org
Sun May 16 11:31:16 UTC 2021


The branch 2021Q2 has been updated by rene:

URL: https://cgit.FreeBSD.org/ports/commit/?id=c82dfb1970514b7f33883c7651b4cfc676e8c7fc

commit c82dfb1970514b7f33883c7651b4cfc676e8c7fc
Author:     Rene Ladan <rene at FreeBSD.org>
AuthorDate: 2021-05-15 18:56:06 +0000
Commit:     Rene Ladan <rene at FreeBSD.org>
CommitDate: 2021-05-16 11:31:05 +0000

    www/chromium: attempt to make it work with Microsoft Teams
    
    - add dependency virtual_oss so the microphone works [1]
    - skip assertion in h264_decoder, we will force it to initialize
      later [2]
    
    PR:     246214 [1]
    PR:     255484 [2]
    MFH:    2021Q2
    (cherry picked from commit 74647995deae7050b6f9a3bf3b3a3ef8ff25ad63)
---
 www/chromium/Makefile                              |  4 +++-
 ...ideo__coding_codecs_h264_h264__decoder__impl.cc | 22 ++++++++++++++++------
 2 files changed, 19 insertions(+), 7 deletions(-)

diff --git a/www/chromium/Makefile b/www/chromium/Makefile
index 5a5b33075650..d623cdc57569 100644
--- a/www/chromium/Makefile
+++ b/www/chromium/Makefile
@@ -2,6 +2,7 @@
 
 PORTNAME=	chromium
 PORTVERSION=	90.0.4430.212
+PORTREVISION=	1
 CATEGORIES=	www java
 MASTER_SITES=	https://commondatastorage.googleapis.com/chromium-browser-official/ \
 		LOCAL/rene/chromium/:fonts
@@ -63,7 +64,8 @@ LIB_DEPENDS=	libatk-bridge-2.0.so:accessibility/at-spi2-atk \
 		libxshmfence.so:x11/libxshmfence
 
 RUN_DEPENDS=	xdg-open:devel/xdg-utils \
-		noto-basic>0:x11-fonts/noto-basic
+		noto-basic>0:x11-fonts/noto-basic \
+		virtual_oss>0:audio/virtual_oss
 
 USES=		bison compiler:c++17-lang cpe desktop-file-utils dos2unix gl gnome jpeg localbase:ldflags \
 		ninja perl5 pkgconfig python:2.7,build shebangfix tar:xz xorg
diff --git a/www/chromium/files/patch-third__party_webrtc_modules_video__coding_codecs_h264_h264__decoder__impl.cc b/www/chromium/files/patch-third__party_webrtc_modules_video__coding_codecs_h264_h264__decoder__impl.cc
index 83f4afc9a103..4d6ee5c9c3ca 100644
--- a/www/chromium/files/patch-third__party_webrtc_modules_video__coding_codecs_h264_h264__decoder__impl.cc
+++ b/www/chromium/files/patch-third__party_webrtc_modules_video__coding_codecs_h264_h264__decoder__impl.cc
@@ -1,12 +1,22 @@
---- third_party/webrtc/modules/video_coding/codecs/h264/h264_decoder_impl.cc.orig	2021-04-30 09:00:21.722978000 +0000
-+++ third_party/webrtc/modules/video_coding/codecs/h264/h264_decoder_impl.cc	2021-04-30 09:00:54.473978000 +0000
-@@ -202,6 +202,9 @@
+--- third_party/webrtc/modules/video_coding/codecs/h264/h264_decoder_impl.cc.orig	2021-05-10 18:48:00 UTC
++++ third_party/webrtc/modules/video_coding/codecs/h264/h264_decoder_impl.cc
+@@ -77,7 +77,8 @@ int H264DecoderImpl::AVGetBuffer2(AVCodecContext* cont
+   int height = av_frame->height;
+   // See |lowres|, if used the decoder scales the image by 1/2^(lowres). This
+   // has implications on which resolutions are valid, but we don't use it.
+-  RTC_CHECK_EQ(context->lowres, 0);
++  // PR255687: disabled to prevent crash with Microsoft Teams
++  // RTC_CHECK_EQ(context->lowres, 0);
+   // Adjust the |width| and |height| to values acceptable by the decoder.
+   // Without this, FFmpeg may overflow the buffer. If modified, |width| and/or
+   // |height| are larger than the actual image and the image has to be cropped
+@@ -201,6 +202,9 @@ int32_t H264DecoderImpl::InitDecode(const VideoCodec* 
+   // |get_buffer2| is called with the context, there |opaque| can be used to get
    // a pointer |this|.
    av_context_->opaque = this;
- 
++
 +  // Initializing |lowres|
 +  av_context_->lowres = 0;
-+
+ 
    AVCodec* codec = avcodec_find_decoder(av_context_->codec_id);
    if (!codec) {
-     // This is an indication that FFmpeg has not been initialized or it has not


More information about the dev-commits-ports-branches mailing list