public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
* [rpms/chromium] epel9-next: - Update to 131.0.6778.108
@ 2026-08-07 16:07 Than Ngo
0 siblings, 0 replies; only message in thread
From: Than Ngo @ 2026-08-07 16:07 UTC (permalink / raw)
To: git-commits
A new commit has been pushed.
Repo : rpms/chromium
Branch : epel9-next
Commit : 3ed80b6d8f288468e2c570b694172d8836a1965d
Author : Than Ngo <than@redhat.com>
Date : 2024-12-04T10:38:17+01:00
Stats : +7/-699 in 3 file(s)
URL : https://src.fedoraproject.org/rpms/chromium/c/3ed80b6d8f288468e2c570b694172d8836a1965d?branch=epel9-next
Log:
- Update to 131.0.6778.108
* High CVE-2024-12053: Type Confusion in V8
- removed a workaround for build error on el8
---
diff --git a/chromium-131-el8-libavcodec-parser.patch b/chromium-131-el8-libavcodec-parser.patch
deleted file mode 100644
index 24da282..0000000
--- a/chromium-131-el8-libavcodec-parser.patch
+++ /dev/null
@@ -1,690 +0,0 @@
---- /dev/null 2024-11-22 07:51:33.845958571 +0100
-+++ chromium-131.0.6778.85/third_party/ffmpeg/libavcodec/parser.h 2024-11-19 23:48:49.634320300 +0100
-@@ -0,0 +1,58 @@
-+/*
-+ * AVCodecParser prototypes and definitions
-+ * Copyright (c) 2003 Fabrice Bellard
-+ * Copyright (c) 2003 Michael Niedermayer
-+ *
-+ * This file is part of FFmpeg.
-+ *
-+ * FFmpeg is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU Lesser General Public
-+ * License as published by the Free Software Foundation; either
-+ * version 2.1 of the License, or (at your option) any later version.
-+ *
-+ * FFmpeg is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-+ * Lesser General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU Lesser General Public
-+ * License along with FFmpeg; if not, write to the Free Software
-+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-+ */
-+
-+#ifndef AVCODEC_PARSER_H
-+#define AVCODEC_PARSER_H
-+
-+#include "avcodec.h"
-+
-+typedef struct ParseContext{
-+ uint8_t *buffer;
-+ int index;
-+ int last_index;
-+ unsigned int buffer_size;
-+ uint32_t state; ///< contains the last few bytes in MSB order
-+ int frame_start_found;
-+ int overread; ///< the number of bytes which where irreversibly read from the next frame
-+ int overread_index; ///< the index into ParseContext.buffer of the overread bytes
-+ uint64_t state64; ///< contains the last 8 bytes in MSB order
-+} ParseContext;
-+
-+#define END_NOT_FOUND (-100)
-+
-+/**
-+ * Combine the (truncated) bitstream to a complete frame.
-+ * @return -1 if no complete frame could be created,
-+ * AVERROR(ENOMEM) if there was a memory allocation error
-+ */
-+int ff_combine_frame(ParseContext *pc, int next, const uint8_t **buf, int *buf_size);
-+void ff_parse_close(AVCodecParserContext *s);
-+
-+/**
-+ * Fetch timestamps for a specific byte within the current access unit.
-+ * @param off byte position within the access unit
-+ * @param remove Found timestamps will be removed if set to 1, kept if set to 0.
-+ * @param fuzzy Only use found value if it is more informative than what we already have
-+ */
-+void ff_fetch_timestamp(AVCodecParserContext *s, int off, int remove, int fuzzy);
-+
-+#endif /* AVCODEC_PARSER_H */
---- /dev/null 2024-11-22 07:51:33.845958571 +0100
-+++ chromium-131.0.6778.85/third_party/ffmpeg/libavcodec/parser.c 2024-11-19 23:48:49.633320000 +0100
-@@ -0,0 +1,295 @@
-+/*
-+ * Audio and Video frame extraction
-+ * Copyright (c) 2003 Fabrice Bellard
-+ * Copyright (c) 2003 Michael Niedermayer
-+ *
-+ * This file is part of FFmpeg.
-+ *
-+ * FFmpeg is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU Lesser General Public
-+ * License as published by the Free Software Foundation; either
-+ * version 2.1 of the License, or (at your option) any later version.
-+ *
-+ * FFmpeg is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-+ * Lesser General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU Lesser General Public
-+ * License along with FFmpeg; if not, write to the Free Software
-+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-+ */
-+
-+#include <inttypes.h>
-+#include <stdint.h>
-+#include <string.h>
-+
-+#include "libavutil/avassert.h"
-+#include "libavutil/mem.h"
-+
-+#include "parser.h"
-+
-+AVCodecParserContext *av_parser_init(int codec_id)
-+{
-+ AVCodecParserContext *s = NULL;
-+ const AVCodecParser *parser;
-+ void *i = 0;
-+ int ret;
-+
-+ if (codec_id == AV_CODEC_ID_NONE)
-+ return NULL;
-+
-+ while ((parser = av_parser_iterate(&i))) {
-+ if (parser->codec_ids[0] == codec_id ||
-+ parser->codec_ids[1] == codec_id ||
-+ parser->codec_ids[2] == codec_id ||
-+ parser->codec_ids[3] == codec_id ||
-+ parser->codec_ids[4] == codec_id ||
-+ parser->codec_ids[5] == codec_id ||
-+ parser->codec_ids[6] == codec_id)
-+ goto found;
-+ }
-+ return NULL;
-+
-+found:
-+ s = av_mallocz(sizeof(AVCodecParserContext));
-+ if (!s)
-+ goto err_out;
-+ s->parser = parser;
-+ s->priv_data = av_mallocz(parser->priv_data_size);
-+ if (!s->priv_data)
-+ goto err_out;
-+ s->fetch_timestamp=1;
-+ s->pict_type = AV_PICTURE_TYPE_I;
-+ if (parser->parser_init) {
-+ ret = parser->parser_init(s);
-+ if (ret != 0)
-+ goto err_out;
-+ }
-+ s->key_frame = -1;
-+ s->dts_sync_point = INT_MIN;
-+ s->dts_ref_dts_delta = INT_MIN;
-+ s->pts_dts_delta = INT_MIN;
-+ s->format = -1;
-+
-+ return s;
-+
-+err_out:
-+ if (s)
-+ av_freep(&s->priv_data);
-+ av_free(s);
-+ return NULL;
-+}
-+
-+void ff_fetch_timestamp(AVCodecParserContext *s, int off, int remove, int fuzzy)
-+{
-+ int i;
-+
-+ if (!fuzzy) {
-+ s->dts =
-+ s->pts = AV_NOPTS_VALUE;
-+ s->pos = -1;
-+ s->offset = 0;
-+ }
-+ for (i = 0; i < AV_PARSER_PTS_NB; i++) {
-+ if (s->cur_offset + off >= s->cur_frame_offset[i] &&
-+ (s->frame_offset < s->cur_frame_offset[i] ||
-+ (!s->frame_offset && !s->next_frame_offset)) && // first field/frame
-+ // check disabled since MPEG-TS does not send complete PES packets
-+ /*s->next_frame_offset + off <*/ s->cur_frame_end[i]){
-+
-+ if (!fuzzy || s->cur_frame_dts[i] != AV_NOPTS_VALUE) {
-+ s->dts = s->cur_frame_dts[i];
-+ s->pts = s->cur_frame_pts[i];
-+ s->pos = s->cur_frame_pos[i];
-+ s->offset = s->next_frame_offset - s->cur_frame_offset[i];
-+ }
-+ if (remove)
-+ s->cur_frame_offset[i] = INT64_MAX;
-+ if (s->cur_offset + off < s->cur_frame_end[i])
-+ break;
-+ }
-+ }
-+}
-+
-+int av_parser_parse2(AVCodecParserContext *s, AVCodecContext *avctx,
-+ uint8_t **poutbuf, int *poutbuf_size,
-+ const uint8_t *buf, int buf_size,
-+ int64_t pts, int64_t dts, int64_t pos)
-+{
-+ int index, i;
-+ uint8_t dummy_buf[AV_INPUT_BUFFER_PADDING_SIZE];
-+
-+ av_assert1(avctx->codec_id != AV_CODEC_ID_NONE);
-+
-+ /* Parsers only work for the specified codec ids. */
-+ av_assert1(avctx->codec_id == s->parser->codec_ids[0] ||
-+ avctx->codec_id == s->parser->codec_ids[1] ||
-+ avctx->codec_id == s->parser->codec_ids[2] ||
-+ avctx->codec_id == s->parser->codec_ids[3] ||
-+ avctx->codec_id == s->parser->codec_ids[4] ||
-+ avctx->codec_id == s->parser->codec_ids[5] ||
-+ avctx->codec_id == s->parser->codec_ids[6]);
-+
-+ if (!(s->flags & PARSER_FLAG_FETCHED_OFFSET)) {
-+ s->next_frame_offset =
-+ s->cur_offset = pos;
-+ s->flags |= PARSER_FLAG_FETCHED_OFFSET;
-+ }
-+
-+ if (buf_size == 0) {
-+ /* padding is always necessary even if EOF, so we add it here */
-+ memset(dummy_buf, 0, sizeof(dummy_buf));
-+ buf = dummy_buf;
-+ } else if (s->cur_offset + buf_size != s->cur_frame_end[s->cur_frame_start_index]) { /* skip remainder packets */
-+ /* add a new packet descriptor */
-+ i = (s->cur_frame_start_index + 1) & (AV_PARSER_PTS_NB - 1);
-+ s->cur_frame_start_index = i;
-+ s->cur_frame_offset[i] = s->cur_offset;
-+ s->cur_frame_end[i] = s->cur_offset + buf_size;
-+ s->cur_frame_pts[i] = pts;
-+ s->cur_frame_dts[i] = dts;
-+ s->cur_frame_pos[i] = pos;
-+ }
-+
-+ if (s->fetch_timestamp) {
-+ s->fetch_timestamp = 0;
-+ s->last_pts = s->pts;
-+ s->last_dts = s->dts;
-+ s->last_pos = s->pos;
-+ ff_fetch_timestamp(s, 0, 0, 0);
-+ }
-+ /* WARNING: the returned index can be negative */
-+ index = s->parser->parser_parse(s, avctx, (const uint8_t **) poutbuf,
-+ poutbuf_size, buf, buf_size);
-+ av_assert0(index > -0x20000000); // The API does not allow returning AVERROR codes
-+#define FILL(name) if(s->name > 0 && avctx->name <= 0) avctx->name = s->name
-+ if (avctx->codec_type == AVMEDIA_TYPE_VIDEO) {
-+ FILL(field_order);
-+ FILL(coded_width);
-+ FILL(coded_height);
-+ FILL(width);
-+ FILL(height);
-+ }
-+
-+ /* update the file pointer */
-+ if (*poutbuf_size) {
-+ /* fill the data for the current frame */
-+ s->frame_offset = s->next_frame_offset;
-+
-+ /* offset of the next frame */
-+ s->next_frame_offset = s->cur_offset + index;
-+ s->fetch_timestamp = 1;
-+ } else {
-+ /* Don't return a pointer to dummy_buf. */
-+ *poutbuf = NULL;
-+ }
-+ if (index < 0)
-+ index = 0;
-+ s->cur_offset += index;
-+ return index;
-+}
-+
-+void av_parser_close(AVCodecParserContext *s)
-+{
-+ if (s) {
-+ if (s->parser->parser_close)
-+ s->parser->parser_close(s);
-+ av_freep(&s->priv_data);
-+ av_free(s);
-+ }
-+}
-+
-+int ff_combine_frame(ParseContext *pc, int next,
-+ const uint8_t **buf, int *buf_size)
-+{
-+ if (pc->overread) {
-+ ff_dlog(NULL, "overread %d, state:%"PRIX32" next:%d index:%d o_index:%d\n",
-+ pc->overread, pc->state, next, pc->index, pc->overread_index);
-+ ff_dlog(NULL, "%X %X %X %X\n",
-+ (*buf)[0], (*buf)[1], (*buf)[2], (*buf)[3]);
-+ }
-+
-+ /* Copy overread bytes from last frame into buffer. */
-+ for (; pc->overread > 0; pc->overread--)
-+ pc->buffer[pc->index++] = pc->buffer[pc->overread_index++];
-+
-+ if (next > *buf_size)
-+ return AVERROR(EINVAL);
-+
-+ /* flush remaining if EOF */
-+ if (!*buf_size && next == END_NOT_FOUND)
-+ next = 0;
-+
-+ pc->last_index = pc->index;
-+
-+ /* copy into buffer end return */
-+ if (next == END_NOT_FOUND) {
-+ void *new_buffer = av_fast_realloc(pc->buffer, &pc->buffer_size,
-+ *buf_size + pc->index +
-+ AV_INPUT_BUFFER_PADDING_SIZE);
-+
-+ if (!new_buffer) {
-+ av_log(NULL, AV_LOG_ERROR, "Failed to reallocate parser buffer to %d\n", *buf_size + pc->index + AV_INPUT_BUFFER_PADDING_SIZE);
-+ pc->index = 0;
-+ return AVERROR(ENOMEM);
-+ }
-+ pc->buffer = new_buffer;
-+ memcpy(&pc->buffer[pc->index], *buf, *buf_size);
-+ memset(&pc->buffer[pc->index + *buf_size], 0, AV_INPUT_BUFFER_PADDING_SIZE);
-+ pc->index += *buf_size;
-+ return -1;
-+ }
-+
-+ av_assert0(next >= 0 || pc->buffer);
-+
-+ *buf_size =
-+ pc->overread_index = pc->index + next;
-+
-+ /* append to buffer */
-+ if (pc->index) {
-+ void *new_buffer = av_fast_realloc(pc->buffer, &pc->buffer_size,
-+ next + pc->index +
-+ AV_INPUT_BUFFER_PADDING_SIZE);
-+ if (!new_buffer) {
-+ av_log(NULL, AV_LOG_ERROR, "Failed to reallocate parser buffer to %d\n", next + pc->index + AV_INPUT_BUFFER_PADDING_SIZE);
-+ *buf_size =
-+ pc->overread_index =
-+ pc->index = 0;
-+ return AVERROR(ENOMEM);
-+ }
-+ pc->buffer = new_buffer;
-+ if (next > -AV_INPUT_BUFFER_PADDING_SIZE)
-+ memcpy(&pc->buffer[pc->index], *buf,
-+ next + AV_INPUT_BUFFER_PADDING_SIZE);
-+ pc->index = 0;
-+ *buf = pc->buffer;
-+ }
-+
-+ if (next < -8) {
-+ pc->overread += -8 - next;
-+ next = -8;
-+ }
-+ /* store overread bytes */
-+ for (; next < 0; next++) {
-+ pc->state = pc->state << 8 | pc->buffer[pc->last_index + next];
-+ pc->state64 = pc->state64 << 8 | pc->buffer[pc->last_index + next];
-+ pc->overread++;
-+ }
-+
-+ if (pc->overread) {
-+ ff_dlog(NULL, "overread %d, state:%"PRIX32" next:%d index:%d o_index:%d\n",
-+ pc->overread, pc->state, next, pc->index, pc->overread_index);
-+ ff_dlog(NULL, "%X %X %X %X\n",
-+ (*buf)[0], (*buf)[1], (*buf)[2], (*buf)[3]);
-+ }
-+
-+ return 0;
-+}
-+
-+void ff_parse_close(AVCodecParserContext *s)
-+{
-+ ParseContext *pc = s->priv_data;
-+
-+ av_freep(&pc->buffer);
-+}
---- /dev/null 2024-11-22 07:51:33.845958571 +0100
-+++ chromium-131.0.6778.85/third_party/ffmpeg/libavcodec/hevc/hevc.h 2024-11-19 23:48:49.494310400 +0100
-@@ -0,0 +1,163 @@
-+/*
-+ * HEVC shared code
-+ *
-+ * This file is part of FFmpeg.
-+ *
-+ * FFmpeg is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU Lesser General Public
-+ * License as published by the Free Software Foundation; either
-+ * version 2.1 of the License, or (at your option) any later version.
-+ *
-+ * FFmpeg is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-+ * Lesser General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU Lesser General Public
-+ * License along with FFmpeg; if not, write to the Free Software
-+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-+ */
-+
-+#ifndef AVCODEC_HEVC_HEVC_H
-+#define AVCODEC_HEVC_HEVC_H
-+
-+/**
-+ * Table 7-1 – NAL unit type codes and NAL unit type classes in
-+ * T-REC-H.265-201802
-+ */
-+enum HEVCNALUnitType {
-+ HEVC_NAL_TRAIL_N = 0,
-+ HEVC_NAL_TRAIL_R = 1,
-+ HEVC_NAL_TSA_N = 2,
-+ HEVC_NAL_TSA_R = 3,
-+ HEVC_NAL_STSA_N = 4,
-+ HEVC_NAL_STSA_R = 5,
-+ HEVC_NAL_RADL_N = 6,
-+ HEVC_NAL_RADL_R = 7,
-+ HEVC_NAL_RASL_N = 8,
-+ HEVC_NAL_RASL_R = 9,
-+ HEVC_NAL_VCL_N10 = 10,
-+ HEVC_NAL_VCL_R11 = 11,
-+ HEVC_NAL_VCL_N12 = 12,
-+ HEVC_NAL_VCL_R13 = 13,
-+ HEVC_NAL_VCL_N14 = 14,
-+ HEVC_NAL_VCL_R15 = 15,
-+ HEVC_NAL_BLA_W_LP = 16,
-+ HEVC_NAL_BLA_W_RADL = 17,
-+ HEVC_NAL_BLA_N_LP = 18,
-+ HEVC_NAL_IDR_W_RADL = 19,
-+ HEVC_NAL_IDR_N_LP = 20,
-+ HEVC_NAL_CRA_NUT = 21,
-+ HEVC_NAL_RSV_IRAP_VCL22 = 22,
-+ HEVC_NAL_RSV_IRAP_VCL23 = 23,
-+ HEVC_NAL_RSV_VCL24 = 24,
-+ HEVC_NAL_RSV_VCL25 = 25,
-+ HEVC_NAL_RSV_VCL26 = 26,
-+ HEVC_NAL_RSV_VCL27 = 27,
-+ HEVC_NAL_RSV_VCL28 = 28,
-+ HEVC_NAL_RSV_VCL29 = 29,
-+ HEVC_NAL_RSV_VCL30 = 30,
-+ HEVC_NAL_RSV_VCL31 = 31,
-+ HEVC_NAL_VPS = 32,
-+ HEVC_NAL_SPS = 33,
-+ HEVC_NAL_PPS = 34,
-+ HEVC_NAL_AUD = 35,
-+ HEVC_NAL_EOS_NUT = 36,
-+ HEVC_NAL_EOB_NUT = 37,
-+ HEVC_NAL_FD_NUT = 38,
-+ HEVC_NAL_SEI_PREFIX = 39,
-+ HEVC_NAL_SEI_SUFFIX = 40,
-+ HEVC_NAL_RSV_NVCL41 = 41,
-+ HEVC_NAL_RSV_NVCL42 = 42,
-+ HEVC_NAL_RSV_NVCL43 = 43,
-+ HEVC_NAL_RSV_NVCL44 = 44,
-+ HEVC_NAL_RSV_NVCL45 = 45,
-+ HEVC_NAL_RSV_NVCL46 = 46,
-+ HEVC_NAL_RSV_NVCL47 = 47,
-+ HEVC_NAL_UNSPEC48 = 48,
-+ HEVC_NAL_UNSPEC49 = 49,
-+ HEVC_NAL_UNSPEC50 = 50,
-+ HEVC_NAL_UNSPEC51 = 51,
-+ HEVC_NAL_UNSPEC52 = 52,
-+ HEVC_NAL_UNSPEC53 = 53,
-+ HEVC_NAL_UNSPEC54 = 54,
-+ HEVC_NAL_UNSPEC55 = 55,
-+ HEVC_NAL_UNSPEC56 = 56,
-+ HEVC_NAL_UNSPEC57 = 57,
-+ HEVC_NAL_UNSPEC58 = 58,
-+ HEVC_NAL_UNSPEC59 = 59,
-+ HEVC_NAL_UNSPEC60 = 60,
-+ HEVC_NAL_UNSPEC61 = 61,
-+ HEVC_NAL_UNSPEC62 = 62,
-+ HEVC_NAL_UNSPEC63 = 63,
-+};
-+
-+enum HEVCSliceType {
-+ HEVC_SLICE_B = 0,
-+ HEVC_SLICE_P = 1,
-+ HEVC_SLICE_I = 2,
-+};
-+
-+enum {
-+ // 7.4.3.1: vps_max_layers_minus1 is in [0, 62].
-+ HEVC_MAX_LAYERS = 63,
-+ // 7.4.3.1: vps_max_sub_layers_minus1 is in [0, 6].
-+ HEVC_MAX_SUB_LAYERS = 7,
-+ // 7.4.3.1: vps_num_layer_sets_minus1 is in [0, 1023].
-+ HEVC_MAX_LAYER_SETS = 1024,
-+
-+ // 7.4.2.1: vps_video_parameter_set_id is u(4).
-+ HEVC_MAX_VPS_COUNT = 16,
-+ // 7.4.3.2.1: sps_seq_parameter_set_id is in [0, 15].
-+ HEVC_MAX_SPS_COUNT = 16,
-+ // 7.4.3.3.1: pps_pic_parameter_set_id is in [0, 63].
-+ HEVC_MAX_PPS_COUNT = 64,
-+
-+ // A.4.2: MaxDpbSize is bounded above by 16.
-+ HEVC_MAX_DPB_SIZE = 16,
-+ // 7.4.3.1: vps_max_dec_pic_buffering_minus1[i] is in [0, MaxDpbSize - 1].
-+ HEVC_MAX_REFS = HEVC_MAX_DPB_SIZE,
-+
-+ // 7.4.3.2.1: num_short_term_ref_pic_sets is in [0, 64].
-+ HEVC_MAX_SHORT_TERM_REF_PIC_SETS = 64,
-+ // 7.4.3.2.1: num_long_term_ref_pics_sps is in [0, 32].
-+ HEVC_MAX_LONG_TERM_REF_PICS = 32,
-+
-+ // A.3: all profiles require that CtbLog2SizeY is in [4, 6].
-+ HEVC_MIN_LOG2_CTB_SIZE = 4,
-+ HEVC_MAX_LOG2_CTB_SIZE = 6,
-+
-+ // E.3.2: cpb_cnt_minus1[i] is in [0, 31].
-+ HEVC_MAX_CPB_CNT = 32,
-+
-+ // A.4.1: in table A.6 the highest level allows a MaxLumaPs of 35 651 584.
-+ HEVC_MAX_LUMA_PS = 35651584,
-+ // A.4.1: pic_width_in_luma_samples and pic_height_in_luma_samples are
-+ // constrained to be not greater than sqrt(MaxLumaPs * 8). Hence height/
-+ // width are bounded above by sqrt(8 * 35651584) = 16888.2 samples.
-+ HEVC_MAX_WIDTH = 16888,
-+ HEVC_MAX_HEIGHT = 16888,
-+
-+ // A.4.1: table A.6 allows at most 22 tile rows for any level.
-+ HEVC_MAX_TILE_ROWS = 22,
-+ // A.4.1: table A.6 allows at most 20 tile columns for any level.
-+ HEVC_MAX_TILE_COLUMNS = 20,
-+
-+ // A.4.2: table A.6 allows at most 600 slice segments for any level.
-+ HEVC_MAX_SLICE_SEGMENTS = 600,
-+
-+ // 7.4.7.1: in the worst case (tiles_enabled_flag and
-+ // entropy_coding_sync_enabled_flag are both set), entry points can be
-+ // placed at the beginning of every Ctb row in every tile, giving an
-+ // upper bound of (num_tile_columns_minus1 + 1) * PicHeightInCtbsY - 1.
-+ // Only a stream with very high resolution and perverse parameters could
-+ // get near that, though, so set a lower limit here with the maximum
-+ // possible value for 4K video (at most 135 16x16 Ctb rows).
-+ HEVC_MAX_ENTRY_POINT_OFFSETS = HEVC_MAX_TILE_COLUMNS * 135,
-+
-+ // A.3.7: Screen content coding extensions
-+ HEVC_MAX_PALETTE_PREDICTOR_SIZE = 128,
-+};
-+
-+
-+#endif /* AVCODEC_HEVC_HEVC_H */
---- /dev/null 2024-11-22 07:51:33.845958571 +0100
-+++ chromium-131.0.6778.85/third_party/ffmpeg/libavutil/aarch64/intreadwrite.h 2024-11-19 23:48:50.697394400 +0100
-@@ -0,0 +1,42 @@
-+/*
-+ * This file is part of FFmpeg.
-+ *
-+ * FFmpeg is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU Lesser General Public
-+ * License as published by the Free Software Foundation; either
-+ * version 2.1 of the License, or (at your option) any later version.
-+ *
-+ * FFmpeg is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-+ * Lesser General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU Lesser General Public
-+ * License along with FFmpeg; if not, write to the Free Software
-+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-+ */
-+
-+#ifndef AVUTIL_AARCH64_INTREADWRITE_H
-+#define AVUTIL_AARCH64_INTREADWRITE_H
-+
-+#if HAVE_INTRINSICS_NEON
-+
-+#include <arm_neon.h>
-+
-+#define AV_COPY128 AV_COPY128
-+static av_always_inline void AV_COPY128(void *d, const void *s)
-+{
-+ uint8x16_t tmp = vld1q_u8((const uint8_t *)s);
-+ vst1q_u8((uint8_t *)d, tmp);
-+}
-+
-+#define AV_ZERO128 AV_ZERO128
-+static av_always_inline void AV_ZERO128(void *d)
-+{
-+ uint8x16_t zero = vdupq_n_u8(0);
-+ vst1q_u8((uint8_t *)d, zero);
-+}
-+
-+#endif /* HAVE_INTRINSICS_NEON */
-+
-+#endif /* AVUTIL_AARCH64_INTREADWRITE_H */
---- /dev/null 2024-11-22 07:51:33.845958571 +0100
-+++ chromium-131.0.6778.85/third_party/ffmpeg/libavcodec/opus/enc.h 2024-11-19 23:48:49.631320000 +0100
-@@ -0,0 +1,55 @@
-+/*
-+ * Opus encoder
-+ * Copyright (c) 2017 Rostislav Pehlivanov <atomnuker@gmail.com>
-+ *
-+ * This file is part of FFmpeg.
-+ *
-+ * FFmpeg is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU Lesser General Public
-+ * License as published by the Free Software Foundation; either
-+ * version 2.1 of the License, or (at your option) any later version.
-+ *
-+ * FFmpeg is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-+ * Lesser General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU Lesser General Public
-+ * License along with FFmpeg; if not, write to the Free Software
-+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-+ */
-+
-+#ifndef AVCODEC_OPUS_ENC_H
-+#define AVCODEC_OPUS_ENC_H
-+
-+#include "libavutil/intmath.h"
-+#include "opus.h"
-+
-+/* Determines the maximum delay the psychoacoustic system will use for lookahead */
-+#define FF_BUFQUEUE_SIZE 145
-+#include "libavfilter/bufferqueue.h"
-+
-+#define OPUS_MAX_LOOKAHEAD ((FF_BUFQUEUE_SIZE - 1)*2.5f)
-+
-+#define OPUS_MAX_CHANNELS 2
-+
-+/* 120 ms / 2.5 ms = 48 frames (extremely improbable, but the encoder'll work) */
-+#define OPUS_MAX_FRAMES_PER_PACKET 48
-+
-+#define OPUS_BLOCK_SIZE(x) (2 * 15 * (1 << ((x) + 2)))
-+
-+#define OPUS_SAMPLES_TO_BLOCK_SIZE(x) (ff_log2((x) / (2 * 15)) - 2)
-+
-+typedef struct OpusEncOptions {
-+ float max_delay_ms;
-+ int apply_phase_inv;
-+} OpusEncOptions;
-+
-+typedef struct OpusPacketInfo {
-+ enum OpusMode mode;
-+ enum OpusBandwidth bandwidth;
-+ int framesize;
-+ int frames;
-+} OpusPacketInfo;
-+
-+#endif /* AVCODEC_OPUS_ENC_H */
---- /dev/null 2024-11-22 07:51:33.845958571 +0100
-+++ chromium-131.0.6778.85/third_party/ffmpeg/libavcodec/opus/opus.h 2024-11-19 23:48:49.631320000 +0100
-@@ -0,0 +1,59 @@
-+/*
-+ * Opus common header
-+ * Copyright (c) 2012 Andrew D'Addesio
-+ * Copyright (c) 2013-2014 Mozilla Corporation
-+ *
-+ * This file is part of FFmpeg.
-+ *
-+ * FFmpeg is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU Lesser General Public
-+ * License as published by the Free Software Foundation; either
-+ * version 2.1 of the License, or (at your option) any later version.
-+ *
-+ * FFmpeg is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-+ * Lesser General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU Lesser General Public
-+ * License along with FFmpeg; if not, write to the Free Software
-+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-+ */
-+
-+#ifndef AVCODEC_OPUS_OPUS_H
-+#define AVCODEC_OPUS_OPUS_H
-+
-+#include <stdint.h>
-+
-+#define OPUS_MAX_FRAME_SIZE 1275
-+#define OPUS_MAX_FRAMES 48
-+#define OPUS_MAX_PACKET_DUR 5760
-+
-+#define OPUS_TS_HEADER 0x7FE0 // 0x3ff (11 bits)
-+#define OPUS_TS_MASK 0xFFE0 // top 11 bits
-+
-+static const uint8_t opus_default_extradata[30] = {
-+ 'O', 'p', 'u', 's', 'H', 'e', 'a', 'd',
-+ 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-+};
-+
-+enum OpusMode {
-+ OPUS_MODE_SILK,
-+ OPUS_MODE_HYBRID,
-+ OPUS_MODE_CELT,
-+
-+ OPUS_MODE_NB
-+};
-+
-+enum OpusBandwidth {
-+ OPUS_BANDWIDTH_NARROWBAND,
-+ OPUS_BANDWIDTH_MEDIUMBAND,
-+ OPUS_BANDWIDTH_WIDEBAND,
-+ OPUS_BANDWIDTH_SUPERWIDEBAND,
-+ OPUS_BANDWIDTH_FULLBAND,
-+
-+ OPUS_BANDWITH_NB
-+};
-+
-+#endif /* AVCODEC_OPUS_OPUS_H */
diff --git a/chromium.spec b/chromium.spec
index 7260d33..bf4f925 100644
--- a/chromium.spec
+++ b/chromium.spec
@@ -279,8 +279,8 @@
%endif
Name: chromium%{chromium_channel}
-Version: 131.0.6778.85
-Release: 2%{?dist}
+Version: 131.0.6778.108
+Release: 1%{?dist}
Summary: A WebKit (Blink) powered web browser that Google doesn't want you to use
Url: http://www.chromium.org/Home
License: BSD-3-Clause AND LGPL-2.1-or-later AND Apache-2.0 AND IJG AND MIT AND GPL-2.0-or-later AND ISC AND OpenSSL AND (MPL-1.1 OR GPL-2.0-only OR LGPL-2.0-only)
@@ -329,8 +329,6 @@ Patch133: chromium-121-system-old-ffmpeg.patch
patch134: chromium-125-disable-FFmpegAllowLists.patch
# revert, it causes build error: use of undeclared identifier 'AVFMT_FLAG_NOH264PARSE'
Patch135: chromium-129-disable-H.264-video-parser-during-demuxing.patch
-# workaround for build error on el8 (should be removed in next rebase)
-Patch136: chromium-131-el8-libavcodec-parser.patch
# file conflict with old kernel on el8/el9
Patch141: chromium-118-dma_buf_export_sync_file-conflict.patch
@@ -1047,10 +1045,6 @@ Qt6 UI for chromium.
%patch -P135 -p1 -b .disable-H.264-video-parser-during-demuxing
%endif
-%if 0%{?rhel} == 8
-%patch -P136 -p1 -b .el8-libavcodec-parser
-%endif
-
%if 0%{?rhel} == 8 || 0%{?rhel} == 9
%patch -P141 -p1 -b .dma_buf_export_sync_file-conflict
%endif
@@ -1939,6 +1933,10 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt
%endif
%changelog
+* Wed Dec 04 2024 Than Ngo <than@redhat.com> - 131.0.6778.108-1
+- Update to 131.0.6778.108
+ * High CVE-2024-12053: Type Confusion in V8
+
* Sat Nov 23 2024 Than Ngo <than@redhat.com> - 131.0.6778.85-2
- Enable qt-ui
- Workaround for random crash
diff --git a/sources b/sources
index 14364b2..b688a0b 100644
--- a/sources
+++ b/sources
@@ -2,4 +2,4 @@ SHA512 (node-v20.6.1-linux-arm64.tar.xz) = adfcaf2c22614797fd69fb46d94c1cbf64dea
SHA512 (node-v20.6.1-linux-x64.tar.xz) = 7e15c05041a9a50f0046266aadb2e092a5aefbec19be1c7c809471add520cb57c7df3c47d88b1888b29bf2979dca3c92adddfd965370fa2a9da4ea02186464fd
SHA512 (linux-arm64-0.19.2.tgz) = 8a0d8fec6786fffcd6954d00820037a55d61e60762c74300df0801f8db27057562c221a063bedfb8df56af9ba80abb366336987e881782c5996e6f871abd3dc6
SHA512 (linux-x64-0.19.2.tgz) = a31cc74c4bfa54f9b75d735a1cfc944d3b5efb7c06bfba9542da9a642ae0b2d235ea00ae84d3ad0572c406405110fe7b61377af0fd15803806ef78d20fc6f05d
-SHA512 (chromium-131.0.6778.85-clean.tar.xz) = e2adae2de0de3910d8c915d0b7e1922ddaec5d8cc68d5fa6b0e99fa34ad052171e83333262ac3767f86fb32e5f31791b0ffee48ce694150d4bbaf30035e36052
+SHA512 (chromium-131.0.6778.108-clean.tar.xz) = 9af20541cf8cf29842553d7b2744df22a6c162b90d480dff91a8aff62651b108abec9e66d54c1825bc582411f8e806674cb77abab0f3156401122542c11d8049
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2026-08-07 16:07 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-08-07 16:07 [rpms/chromium] epel9-next: - Update to 131.0.6778.108 Than Ngo
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox