Accepting request 1076879 from GNOME:Factory

OBS-URL: https://build.opensuse.org/request/show/1076879
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/webkit2gtk3?expand=0&rev=166
This commit is contained in:
Dominique Leuenberger 2023-04-04 19:17:04 +00:00 committed by Git OBS Bridge
commit 4c13ba2f9b
5 changed files with 100 additions and 2 deletions

View File

@ -1,12 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<constraints>
<hardware>
<jobs>4</jobs>
<disk>
<size unit="G">20</size>
<size unit="G">26</size>
</disk>
<physicalmemory>
<size unit="M">8000</size>
<size unit="G">15</size>
</physicalmemory>
</hardware>
<hostlabel exclude="true">SLOW_CPU</hostlabel>
<overwrite>
<conditions>
<arch>aarch64</arch>

66
fix-gst-crash.patch Normal file
View File

@ -0,0 +1,66 @@
From: Philippe Normand <philn@igalia.com>
Subject: Fix crash in webkit_media_stream_src_class_init()
Bug: https://bugs.webkit.org/show_bug.cgi?id=254025
Origin: https://github.com/WebKit/WebKit/commit/358ce3a4bd7353c8edaa5720c949301f31c9a5e9
Index: webkitgtk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp
===================================================================
--- webkitgtk.orig/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp
+++ webkitgtk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp
@@ -2647,6 +2647,9 @@ MediaPlayer::SupportsType MediaPlayerPri
#endif
}
+ if (!ensureGStreamerInitialized())
+ return result;
+
GST_DEBUG("Checking mime-type \"%s\"", parameters.type.raw().utf8().data());
if (parameters.type.isEmpty())
return result;
Index: webkitgtk/Source/WebCore/platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.cpp
===================================================================
--- webkitgtk.orig/Source/WebCore/platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.cpp
+++ webkitgtk/Source/WebCore/platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.cpp
@@ -439,22 +439,13 @@ void MediaPlayerPrivateGStreamerMSE::get
MediaPlayer::SupportsType MediaPlayerPrivateGStreamerMSE::supportsType(const MediaEngineSupportParameters& parameters)
{
- static std::optional<VideoDecodingLimits> videoDecodingLimits;
-#ifdef VIDEO_DECODING_LIMIT
- static std::once_flag onceFlag;
- std::call_once(onceFlag, [] {
- videoDecodingLimits = videoDecoderLimitsDefaults();
- if (!videoDecodingLimits) {
- GST_WARNING("Parsing VIDEO_DECODING_LIMIT failed");
- ASSERT_NOT_REACHED();
- }
- });
-#endif
-
MediaPlayer::SupportsType result = MediaPlayer::SupportsType::IsNotSupported;
if (!parameters.isMediaSource)
return result;
+ if (!ensureGStreamerInitialized())
+ return result;
+
auto containerType = parameters.type.containerType();
// YouTube TV provides empty types for some videos and we want to be selected as best media engine for them.
@@ -476,6 +467,16 @@ MediaPlayer::SupportsType MediaPlayerPri
if (!ok)
height = 0;
+ static std::optional<VideoDecodingLimits> videoDecodingLimits;
+#ifdef VIDEO_DECODING_LIMIT
+ static std::once_flag onceFlag;
+ std::call_once(onceFlag, [] {
+ videoDecodingLimits = videoDecoderLimitsDefaults();
+ if (!videoDecodingLimits)
+ GST_WARNING("Parsing VIDEO_DECODING_LIMIT failed");
+ });
+#endif
+
if (videoDecodingLimits && (width > videoDecodingLimits->mediaMaxWidth || height > videoDecodingLimits->mediaMaxHeight))
return result;

11
reproducibility.patch Normal file
View File

@ -0,0 +1,11 @@
--- webkitgtk-2.40.0-orig/Source/JavaScriptCore/generator/GeneratedFile.rb 2023-02-20 10:22:05.321689800 +0100
+++ webkitgtk-2.40.0/Source/JavaScriptCore/generator/GeneratedFile.rb 2023-03-28 10:29:49.754813443 +0200
@@ -25,7 +25,7 @@
require 'digest'
$LICENSE = <<-EOF
-Copyright (C) #{Date.today.year} Apple Inc. All rights reserved.
+Copyright (C) 2023 Apple Inc. All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions

View File

@ -1,3 +1,17 @@
-------------------------------------------------------------------
Tue Mar 28 08:22:05 UTC 2023 - Bjørn Lie <bjorn.lie@gmail.com>
- Add fix-gst-crash.patch: Fix crash in
webkit_media_stream_src_class_init().
https://bugs.webkit.org/show_bug.cgi?id=254025
- Add reproducibility.patch: Make build more reproducible. Still
not there yet though. Inject fixed year in file.
-------------------------------------------------------------------
Fri Mar 24 19:23:02 UTC 2023 - Bjørn Lie <bjorn.lie@gmail.com>
- Tweak constraints.
-------------------------------------------------------------------
Fri Mar 24 09:14:45 UTC 2023 - Martin Liška <mliska@suse.cz>

View File

@ -87,6 +87,10 @@ Source99: webkit2gtk3.keyring
Patch0: regression-fix.patch
# PATCH-FIX-UPSTREAM Fix rejected code by GCC 13: https://github.com/WebKit/WebKit/pull/11910
Patch1: gcc13-fix.patch
# PATCH-FIX-UPSTREAM fix-gst-crash.patch -- Fix crash in webkit_media_stream_src_class_init()
Patch2: fix-gst-crash.patch
# PATCH-FEATURE-OPENSUSE reproducibility.patch -- Make build reproducible
Patch3: reproducibility.patch
BuildRequires: Mesa-libEGL-devel
BuildRequires: Mesa-libGL-devel