public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Andreas Sturmlechner" <asturm@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-qt/qtwebengine/files/, dev-qt/qtwebengine/
Date: Thu, 22 Jul 2021 09:35:51 +0000 (UTC)	[thread overview]
Message-ID: <1626946534.1e28eaa9c45fdfeb0c75271d0cf52e427032dd76.asturm@gentoo> (raw)

commit:     1e28eaa9c45fdfeb0c75271d0cf52e427032dd76
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Thu Jul 22 09:28:29 2021 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Thu Jul 22 09:35:34 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1e28eaa9

dev-qt/qtwebengine: 5.15.2_p20210421 security cleanup

Bug: https://bugs.gentoo.org/800181
Package-Manager: Portage-3.0.20, Repoman-3.0.3
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 dev-qt/qtwebengine/Manifest                        |   1 -
 .../files/qtwebengine-5.15.2_p20210406-gcc11.patch | 126 -------
 .../files/qtwebengine-5.15.2_p20210406-icu69.patch |  92 -----
 .../qtwebengine-5.15.2_p20210421-qtbug-91773.patch | 372 ---------------------
 .../qtwebengine-5.15.2_p20210421.ebuild            | 218 ------------
 5 files changed, 809 deletions(-)

diff --git a/dev-qt/qtwebengine/Manifest b/dev-qt/qtwebengine/Manifest
index 7ee8f9bdba7..562f5ae1546 100644
--- a/dev-qt/qtwebengine/Manifest
+++ b/dev-qt/qtwebengine/Manifest
@@ -1,3 +1,2 @@
 DIST qtwebengine-5.15.2-chromium87-ppc64le.tar.xz 28536 BLAKE2B 98f8e01e7026d9df1d30ae453d4394d3c4ad04c0620a2496235d45f5f1080c2280e040826cde7f72d9771bfc80d0c3df56c9dcbe4f763cec432ad56de37d64c5 SHA512 c90a76f44a9d720624016fd082ab3036f12e13b9789e869ebaf5e4774afca7d4187faf187f365f696d1a7eda05ca75516556ee9d291cdb3408d57cc4b23e2654
-DIST qtwebengine-5.15.2_p20210421.tar.xz 320142308 BLAKE2B 1ed6e3daad8e8da7336c1575f524f1474eb043a44a86eebdc2375e9a01dbb21a4bf622b01525c627ff5846bb375b19617ca78f418749d6e4ce53b376da0b8317 SHA512 3a57cc8eb1aab086ae2ef69b1b1eaac47827d1f460ff53d5954b0dcb6753cc0e5fb24db490ea186141e6659e26a59862e8096126450a9fde6ed1230c00e4ceaa
 DIST qtwebengine-5.15.2_p20210625.tar.xz 320144708 BLAKE2B cd11e69a34ff0fa07d26262906a12304c39a12575024d61db18bc696284e9c5700090e5bfed217c89d2c8eac49b0ccb7d7ee0ba716ec3a81878de1301566884d SHA512 517a8cdaff684894456db8cfb5cfca412b8764e7035623d8190d9a06f6995742097a53eb67329d12bf8dc0a56372f7d09a54532ba804a5bff245ca8ef042a4e1

diff --git a/dev-qt/qtwebengine/files/qtwebengine-5.15.2_p20210406-gcc11.patch b/dev-qt/qtwebengine/files/qtwebengine-5.15.2_p20210406-gcc11.patch
deleted file mode 100644
index 7411567e74f..00000000000
--- a/dev-qt/qtwebengine/files/qtwebengine-5.15.2_p20210406-gcc11.patch
+++ /dev/null
@@ -1,126 +0,0 @@
-diff --git a/src/3rdparty/chromium/third_party/angle/src/libANGLE/HandleAllocator.cpp b/src/3rdparty/chromium/third_party/angle/src/libANGLE/HandleAllocator.cpp
-index 013f1dfb2..3ce63c192 100644
---- a/src/3rdparty/chromium/third_party/angle/src/libANGLE/HandleAllocator.cpp
-+++ b/src/3rdparty/chromium/third_party/angle/src/libANGLE/HandleAllocator.cpp
-@@ -9,6 +9,7 @@
- 
- #include "libANGLE/HandleAllocator.h"
- 
-+#include <limits>
- #include <algorithm>
- #include <functional>
- 
-diff --git a/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/containers/string_pool.cc b/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/containers/string_pool.cc
-index fd651958f..1e8d0606c 100644
---- a/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/containers/string_pool.cc
-+++ b/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/containers/string_pool.cc
-@@ -14,9 +14,9 @@
-  * limitations under the License.
-  */
- 
-+#include <limits>
- #include "src/trace_processor/containers/string_pool.h"
- 
--#include <limits>
- 
- #include "perfetto/base/logging.h"
- #include "perfetto/ext/base/utils.h"
-diff --git a/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/db/column.cc b/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/db/column.cc
-index 00496b335..0dccfeb8a 100644
---- a/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/db/column.cc
-+++ b/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/db/column.cc
-@@ -14,6 +14,7 @@
-  * limitations under the License.
-  */
- 
-+#include <limits>
- #include "src/trace_processor/db/column.h"
- 
- #include "src/trace_processor/db/compare.h"
-diff --git a/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/types/variadic.cc b/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/types/variadic.cc
-index 837bfeba9..cdd56817d 100644
---- a/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/types/variadic.cc
-+++ b/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/types/variadic.cc
-@@ -14,6 +14,7 @@
-  * limitations under the License.
-  */
- 
-+#include <limits>
- #include "src/trace_processor/types/variadic.h"
- 
- namespace perfetto {
-diff --git a/src/3rdparty/chromium/ui/accessibility/platform/ax_platform_atk_hyperlink.cc b/src/3rdparty/chromium/ui/accessibility/platform/ax_platform_atk_hyperlink.cc
-index be91def6b..73f202356 100644
---- a/src/3rdparty/chromium/ui/accessibility/platform/ax_platform_atk_hyperlink.cc
-+++ b/src/3rdparty/chromium/ui/accessibility/platform/ax_platform_atk_hyperlink.cc
-@@ -245,7 +245,7 @@ static void AXPlatformAtkHyperlinkInit(AXPlatformAtkHyperlink* self, gpointer) {
- }
- 
- GType ax_platform_atk_hyperlink_get_type() {
--  static volatile gsize type_volatile = 0;
-+  static gsize type_volatile = 0;
- 
-   AXPlatformNodeAuraLinux::EnsureGTypeInit();
- 
-diff --git a/src/3rdparty/chromium/ui/accessibility/platform/ax_platform_node_auralinux.cc b/src/3rdparty/chromium/ui/accessibility/platform/ax_platform_node_auralinux.cc
-index 04125c6fd..6c64e5d8e 100644
---- a/src/3rdparty/chromium/ui/accessibility/platform/ax_platform_node_auralinux.cc
-+++ b/src/3rdparty/chromium/ui/accessibility/platform/ax_platform_node_auralinux.cc
-@@ -2274,7 +2274,7 @@ void ClassInit(gpointer class_pointer, gpointer /* class_data */) {
- GType GetType() {
-   AXPlatformNodeAuraLinux::EnsureGTypeInit();
- 
--  static volatile gsize type_volatile = 0;
-+  static gsize type_volatile = 0;
-   if (g_once_init_enter(&type_volatile)) {
-     static const GTypeInfo type_info = {
-         sizeof(AXPlatformNodeAuraLinuxClass),  // class_size
-diff --git a/src/3rdparty/chromium/ui/gtk/gtk_key_bindings_handler.cc b/src/3rdparty/chromium/ui/gtk/gtk_key_bindings_handler.cc
-index c663a2074..38a342484 100644
---- a/src/3rdparty/chromium/ui/gtk/gtk_key_bindings_handler.cc
-+++ b/src/3rdparty/chromium/ui/gtk/gtk_key_bindings_handler.cc
-@@ -141,7 +141,7 @@ void GtkKeyBindingsHandler::HandlerClassInit(HandlerClass* klass) {
- }
- 
- GType GtkKeyBindingsHandler::HandlerGetType() {
--  static volatile gsize type_id_volatile = 0;
-+  static gsize type_id_volatile = 0;
-   if (g_once_init_enter(&type_id_volatile)) {
-     GType type_id = g_type_register_static_simple(
-         GTK_TYPE_TEXT_VIEW, g_intern_static_string("GtkKeyBindingsHandler"),
---- a/src/3rdparty/chromium/components/bookmarks/browser/bookmark_expanded_state_tracker.cc
-+++ b/src/3rdparty/chromium/components/bookmarks/browser/bookmark_expanded_state_tracker.cc
-@@ -2,6 +2,7 @@
- // Use of this source code is governed by a BSD-style license that can be
- // found in the LICENSE file.
- 
-+#include <cstddef>
- #include "components/bookmarks/browser/bookmark_expanded_state_tracker.h"
- 
- #include <stdint.h>
-diff --git a/src/3rdparty/chromium/components/bookmarks/browser/base_bookmark_model_observer.cc b/src/3rdparty/chromium/components/bookmarks/browser/base_bookmark_model_observer.cc
-index 657a3c96b..ad641a082 100644
---- a/src/3rdparty/chromium/components/bookmarks/browser/base_bookmark_model_observer.cc
-+++ b/src/3rdparty/chromium/components/bookmarks/browser/base_bookmark_model_observer.cc
-@@ -2,6 +2,8 @@
- // Use of this source code is governed by a BSD-style license that can be
- // found in the LICENSE file.
- 
-+#include <cstddef>
-+
- #include "components/bookmarks/browser/base_bookmark_model_observer.h"
- 
- namespace bookmarks {
-diff --git a/src/3rdparty/chromium/third_party/abseil-cpp/absl/synchronization/internal/graphcycles.cc b/src/3rdparty/chromium/third_party/abseil-cpp/absl/synchronization/internal/graphcycles.cc
-index 19f9aab5b..27fec2168 100644
---- a/src/3rdparty/chromium/third_party/abseil-cpp/absl/synchronization/internal/graphcycles.cc
-+++ b/src/3rdparty/chromium/third_party/abseil-cpp/absl/synchronization/internal/graphcycles.cc
-@@ -37,6 +37,7 @@
- 
- #include <algorithm>
- #include <array>
-+#include <limits>
- #include "absl/base/internal/hide_ptr.h"
- #include "absl/base/internal/raw_logging.h"
- #include "absl/base/internal/spinlock.h"
- 

diff --git a/dev-qt/qtwebengine/files/qtwebengine-5.15.2_p20210406-icu69.patch b/dev-qt/qtwebengine/files/qtwebengine-5.15.2_p20210406-icu69.patch
deleted file mode 100644
index 457953671a4..00000000000
--- a/dev-qt/qtwebengine/files/qtwebengine-5.15.2_p20210406-icu69.patch
+++ /dev/null
@@ -1,92 +0,0 @@
-From 035c305ce7761f51328b45f1bd83e26aef267c9d Mon Sep 17 00:00:00 2001
-From: Frank Tang <ftang@chromium.org>
-Date: Thu, 15 Oct 2020 22:44:27 -0700
-Subject: [PATCH] [Intl] call new ListFormatter::createInstance
-
-The one we currently using is now marked as internal and to be removed
-for 68. Migrating to the style which already avaiable in ICU 67-1.
-
-Bug: v8:11031
-Change-Id: I668382a2e1b8602ddca02bf231c5008a6c92bf2d
-Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2477751
-Reviewed-by: Jakob Kummerow <jkummerow@chromium.org>
-Commit-Queue: Frank Tang <ftang@chromium.org>
-Cr-Commit-Position: refs/heads/master@{#70638}
----
-
-diff --git a/src/3rdparty/chromium/v8/src/objects/js-list-format.cc b/src/3rdparty/chromium/v8/src/objects/js-list-format.cc
-index b17d38c..e48a387 100644
---- a/src/3rdparty/chromium/v8/src/objects/js-list-format.cc
-+++ b/src/3rdparty/chromium/v8/src/objects/js-list-format.cc
-@@ -29,46 +29,27 @@
- namespace internal {
- 
- namespace {
--const char* kStandard = "standard";
--const char* kOr = "or";
--const char* kUnit = "unit";
--const char* kStandardShort = "standard-short";
--const char* kOrShort = "or-short";
--const char* kUnitShort = "unit-short";
--const char* kStandardNarrow = "standard-narrow";
--const char* kOrNarrow = "or-narrow";
--const char* kUnitNarrow = "unit-narrow";
- 
--const char* GetIcuStyleString(JSListFormat::Style style,
--                              JSListFormat::Type type) {
-+UListFormatterWidth GetIcuWidth(JSListFormat::Style style) {
-+  switch (style) {
-+    case JSListFormat::Style::LONG:
-+      return ULISTFMT_WIDTH_WIDE;
-+    case JSListFormat::Style::SHORT:
-+      return ULISTFMT_WIDTH_SHORT;
-+    case JSListFormat::Style::NARROW:
-+      return ULISTFMT_WIDTH_NARROW;
-+  }
-+  UNREACHABLE();
-+}
-+
-+UListFormatterType GetIcuType(JSListFormat::Type type) {
-   switch (type) {
-     case JSListFormat::Type::CONJUNCTION:
--      switch (style) {
--        case JSListFormat::Style::LONG:
--          return kStandard;
--        case JSListFormat::Style::SHORT:
--          return kStandardShort;
--        case JSListFormat::Style::NARROW:
--          return kStandardNarrow;
--      }
-+      return ULISTFMT_TYPE_AND;
-     case JSListFormat::Type::DISJUNCTION:
--      switch (style) {
--        case JSListFormat::Style::LONG:
--          return kOr;
--        case JSListFormat::Style::SHORT:
--          return kOrShort;
--        case JSListFormat::Style::NARROW:
--          return kOrNarrow;
--      }
-+      return ULISTFMT_TYPE_OR;
-     case JSListFormat::Type::UNIT:
--      switch (style) {
--        case JSListFormat::Style::LONG:
--          return kUnit;
--        case JSListFormat::Style::SHORT:
--          return kUnitShort;
--        case JSListFormat::Style::NARROW:
--          return kUnitNarrow;
--      }
-+      return ULISTFMT_TYPE_UNITS;
-   }
-   UNREACHABLE();
- }
-@@ -143,7 +124,7 @@
-   icu::Locale icu_locale = r.icu_locale;
-   UErrorCode status = U_ZERO_ERROR;
-   icu::ListFormatter* formatter = icu::ListFormatter::createInstance(
--      icu_locale, GetIcuStyleString(style_enum, type_enum), status);
-+      icu_locale, GetIcuType(type_enum), GetIcuWidth(style_enum), status);
-   if (U_FAILURE(status) || formatter == nullptr) {
-     delete formatter;
-     THROW_NEW_ERROR(isolate, NewRangeError(MessageTemplate::kIcuError),

diff --git a/dev-qt/qtwebengine/files/qtwebengine-5.15.2_p20210421-qtbug-91773.patch b/dev-qt/qtwebengine/files/qtwebengine-5.15.2_p20210421-qtbug-91773.patch
deleted file mode 100644
index 88e7b893e30..00000000000
--- a/dev-qt/qtwebengine/files/qtwebengine-5.15.2_p20210421-qtbug-91773.patch
+++ /dev/null
@@ -1,372 +0,0 @@
-diff --git a/src/core/web_contents_adapter.cpp b/src/core/web_contents_adapter.cpp
-index 5597c69f9..2cd48907b 100644
---- a/src/core/web_contents_adapter.cpp
-+++ b/src/core/web_contents_adapter.cpp
-@@ -716,8 +716,7 @@ void WebContentsAdapter::load(const QWebEngineHttpRequest &request)
-             m_adapterClient->loadFinished(false, request.url(), false,
-                                           net::ERR_DISALLOWED_URL_SCHEME,
-                                           QCoreApplication::translate("WebContentsAdapter",
--                                          "HTTP-POST data can only be sent over HTTP(S) protocol"),
--                                          false);
-+                                          "HTTP-POST data can only be sent over HTTP(S) protocol"));
-             return;
-         }
-         params.post_data = network::ResourceRequestBody::CreateFromBytes(
-@@ -773,7 +772,7 @@ void WebContentsAdapter::setContent(const QByteArray &data, const QString &mimeT
- 
-     GURL dataUrlToLoad(urlString);
-     if (dataUrlToLoad.spec().size() > url::kMaxURLChars) {
--        m_adapterClient->loadFinished(false, baseUrl, false, net::ERR_ABORTED, QString(), false);
-+        m_adapterClient->loadFinished(false, baseUrl, false, net::ERR_ABORTED, QString());
-         return;
-     }
-     content::NavigationController::LoadURLParams params((dataUrlToLoad));
-@@ -1995,6 +1994,7 @@ void WebContentsAdapter::discard()
-     if (m_webContents->IsLoading()) {
-         m_webContentsDelegate->didFailLoad(m_webContentsDelegate->url(webContents()), net::Error::ERR_ABORTED,
-                                            QStringLiteral("Discarded"));
-+        m_webContentsDelegate->DidStopLoading();
-     }
- 
-     content::WebContents::CreateParams createParams(m_profileAdapter->profile());
-diff --git a/src/core/web_contents_adapter_client.h b/src/core/web_contents_adapter_client.h
-index 267266d81..afc43806a 100644
---- a/src/core/web_contents_adapter_client.h
-+++ b/src/core/web_contents_adapter_client.h
-@@ -466,8 +466,7 @@ public:
-     virtual void loadStarted(const QUrl &provisionalUrl, bool isErrorPage = false) = 0;
-     virtual void loadCommitted() = 0;
-     virtual void loadVisuallyCommitted() = 0;
--    virtual void loadFinished(bool success, const QUrl &url, bool isErrorPage, int errorCode,
--                              const QString &errorDescription, bool triggersErrorPage) = 0;
-+    virtual void loadFinished(bool success, const QUrl &url, bool isErrorPage, int errorCode, const QString &errorDescription) = 0;
-     virtual void focusContainer() = 0;
-     virtual void unhandledKeyEvent(QKeyEvent *event) = 0;
-     virtual QSharedPointer<WebContentsAdapter>
-diff --git a/src/core/web_contents_delegate_qt.cpp b/src/core/web_contents_delegate_qt.cpp
-index 1e92a46f8..f0e4130e8 100644
---- a/src/core/web_contents_delegate_qt.cpp
-+++ b/src/core/web_contents_delegate_qt.cpp
-@@ -259,14 +259,12 @@ void WebContentsDelegateQt::CloseContents(content::WebContents *source)
- 
- void WebContentsDelegateQt::LoadProgressChanged(double progress)
- {
--    QUrl current_url(m_viewClient->webContentsAdapter()->getNavigationEntryOriginalUrl(m_viewClient->webContentsAdapter()->currentNavigationEntryIndex()));
--    int p = qMin(qRound(progress * 100), 100);
--
--    if (!m_loadingErrorFrameList.isEmpty() || !m_loadProgressMap.contains(current_url) || m_loadProgressMap[current_url] == 100 || p ==  100)
-+    if (!m_loadingErrorFrameList.isEmpty() || !m_loadingInfo.isLoading()) // suppress signals that aren't between loadStarted and loadFinished
-         return;
- 
--    if (p > m_loadProgressMap[current_url]) { // ensure strict monotonic increase
--        m_loadProgressMap[current_url] = p;
-+    int p = qMin(qRound(progress * 100), 100);
-+    if (p > m_loadingInfo.progress) { // ensure strict monotonic increase
-+        m_loadingInfo.progress = p;
-         m_viewClient->loadProgressChanged(p);
-     }
- }
-@@ -339,35 +337,21 @@ void WebContentsDelegateQt::RenderViewHostChanged(content::RenderViewHost *, con
-     }
- }
- 
--void WebContentsDelegateQt::EmitLoadStarted(const QUrl &url, bool isErrorPage)
-+void WebContentsDelegateQt::emitLoadStarted(bool isErrorPage)
- {
--    m_isDocumentEmpty = true;
--    m_viewClient->loadStarted(url, isErrorPage);
--    m_viewClient->updateNavigationActions();
--
--    if ((url.hasFragment() || m_lastLoadedUrl.hasFragment())
--        && url.adjusted(QUrl::RemoveFragment) == m_lastLoadedUrl.adjusted(QUrl::RemoveFragment)
--        && !m_isNavigationCommitted) {
--        m_loadProgressMap.insert(url, 100);
--        m_lastLoadedUrl = url;
--        m_viewClient->loadProgressChanged(100);
-+    // only report first ever load start or separate one for error page only
-+    if (!isErrorPage && m_loadingInfo.isLoading()) // already running
-         return;
--    }
- 
--    if (!m_loadProgressMap.isEmpty()) {
--        QMap<QUrl, int>::iterator it = m_loadProgressMap.begin();
--        while (it != m_loadProgressMap.end()) {
--            if (it.value() == 100) {
--                it = m_loadProgressMap.erase(it);
--                continue;
--            }
--            ++it;
--        }
-+    m_isDocumentEmpty = true; // reset to default which may only be overridden on actual resource load complete
-+    if (!isErrorPage) {
-+        m_loadingInfo.progress = 0;
-+        m_viewClient->loadStarted(m_loadingInfo.url, false);
-+        m_viewClient->updateNavigationActions();
-+        m_viewClient->loadProgressChanged(0);
-+    } else {
-+        m_viewClient->loadStarted(toQt(GURL(content::kUnreachableWebDataURL)), true);
-     }
--
--    m_lastLoadedUrl = url;
--    m_loadProgressMap.insert(url, 0);
--    m_viewClient->loadProgressChanged(0);
- }
- 
- void WebContentsDelegateQt::DidStartNavigation(content::NavigationHandle *navigation_handle)
-@@ -375,34 +359,41 @@ void WebContentsDelegateQt::DidStartNavigation(content::NavigationHandle *naviga
-     if (!webEngineSettings()->testAttribute(WebEngineSettings::ErrorPageEnabled))
-         navigation_handle->SetSilentlyIgnoreErrors();
- 
--    if (!navigation_handle->IsInMainFrame())
-+    if (!navigation_handle->IsInMainFrame() || !web_contents()->IsLoadingToDifferentDocument())
-         return;
- 
- 
-     m_loadingErrorFrameList.clear();
-     m_faviconManager->resetCandidates();
--    EmitLoadStarted(toQt(navigation_handle->GetURL()));
-+
-+    m_loadingInfo.url = toQt(navigation_handle->GetURL());
-+    // IsErrorPage is only set after navigation commit, so check it otherwise: error page shouldn't have navigation entry
-+    bool isErrorPage = m_loadingInfo.triggersErrorPage && !navigation_handle->GetNavigationEntry();
-+    emitLoadStarted(isErrorPage);
- }
- 
--void WebContentsDelegateQt::EmitLoadFinished(bool success, const QUrl &url, bool isErrorPage, int errorCode, const QString &errorDescription, bool triggersErrorPage)
-+void WebContentsDelegateQt::emitLoadFinished(bool isErrorPage)
- {
--    Q_ASSERT(!isErrorPage || webEngineSettings()->testAttribute(WebEngineSettings::ErrorPageEnabled));
--    Q_ASSERT((triggersErrorPage && webEngineSettings()->testAttribute(WebEngineSettings::ErrorPageEnabled)) || !triggersErrorPage);
--
--    // When error page enabled we don't need to send the error page load finished signal
--    if (m_loadProgressMap[url] == 100)
-+    if (!m_loadingInfo.isLoading()) // not currently running
-         return;
- 
--    m_lastLoadedUrl = url;
--    m_loadProgressMap[url] = 100;
--    m_isNavigationCommitted = false;
--    m_viewClient->loadProgressChanged(100);
-+    Q_ASSERT(!isErrorPage || webEngineSettings()->testAttribute(WebEngineSettings::ErrorPageEnabled));
-+    Q_ASSERT((m_loadingInfo.triggersErrorPage && webEngineSettings()->testAttribute(WebEngineSettings::ErrorPageEnabled)) || !m_loadingInfo.triggersErrorPage);
-+
-+    if (!isErrorPage) {
-+        if (m_loadingInfo.progress < 100) {
-+            m_loadingInfo.progress = 100;
-+            m_viewClient->loadProgressChanged(100);
-+        }
- 
--    m_viewClient->loadFinished(success, url, isErrorPage, errorCode, errorDescription, triggersErrorPage);
--    m_viewClient->updateNavigationActions();
-+        m_viewClient->loadFinished(m_loadingInfo.success, m_loadingInfo.url, false, m_loadingInfo.errorCode, m_loadingInfo.errorDescription);
-+        m_viewClient->updateNavigationActions();
-+    } else {
-+        m_viewClient->loadFinished(false, toQt(GURL(content::kUnreachableWebDataURL)), true, 0, QString());
-+    }
- }
- 
--void WebContentsDelegateQt::EmitLoadCommitted()
-+void WebContentsDelegateQt::emitLoadCommitted()
- {
-     m_findTextHelper->handleLoadCommitted();
-     m_viewClient->loadCommitted();
-@@ -422,8 +413,7 @@ void WebContentsDelegateQt::DidFinishNavigation(content::NavigationHandle *navig
-                 profileAdapter->visitedLinksManager()->addUrl(url);
-         }
- 
--        m_isNavigationCommitted = true;
--        EmitLoadCommitted();
-+        emitLoadCommitted();
-     }
- 
-     // Success is reported by DidFinishLoad, but DidFailLoad is now dead code and needs to be handled below
-@@ -440,11 +430,11 @@ void WebContentsDelegateQt::DidFinishNavigation(content::NavigationHandle *navig
-         // Now report we are starting to load an error-page.
-         m_loadingErrorFrameList.append(navigation_handle->GetRenderFrameHost()->GetRoutingID());
-         m_faviconManager->resetCandidates();
--        EmitLoadStarted(toQt(GURL(content::kUnreachableWebDataURL)), true);
-+        emitLoadStarted(true);
- 
-         // If it is already committed we will not see another DidFinishNavigation call or a DidFinishLoad call.
-         if (navigation_handle->HasCommitted())
--            EmitLoadCommitted();
-+            emitLoadCommitted();
-     }
- }
- 
-@@ -486,6 +476,9 @@ void WebContentsDelegateQt::DidStopLoading()
- 
-     if (m_loadingState == LoadingState::Loading)
-         setLoadingState(LoadingState::Loaded);
-+
-+    emitLoadFinished();
-+    m_loadingInfo.clear();
- }
- 
- void WebContentsDelegateQt::didFailLoad(const QUrl &url, int errorCode, const QString &errorDescription)
-@@ -495,7 +488,11 @@ void WebContentsDelegateQt::didFailLoad(const QUrl &url, int errorCode, const QS
-     // Delay notifying failure until the error-page is done loading.
-     // Error-pages are not loaded on failures due to abort.
-     bool aborted = (errorCode == -3 /* ERR_ABORTED*/ );
--    EmitLoadFinished(false /* success */ , url, false /* isErrorPage */, errorCode, errorDescription, errorPageEnabled && !aborted);
-+    m_loadingInfo.success = false;
-+    m_loadingInfo.url = url;
-+    m_loadingInfo.errorCode = errorCode;
-+    m_loadingInfo.errorDescription = errorDescription;
-+    m_loadingInfo.triggersErrorPage = errorPageEnabled && !aborted;
- }
- 
- void WebContentsDelegateQt::DidFailLoad(content::RenderFrameHost* render_frame_host, const GURL& validated_url, int error_code)
-@@ -511,8 +508,7 @@ void WebContentsDelegateQt::DidFailLoad(content::RenderFrameHost* render_frame_h
-         Q_ASSERT(error_code == -3 /* ERR_ABORTED */);
-         m_loadingErrorFrameList.removeOne(render_frame_host->GetRoutingID());
-         m_viewClient->iconChanged(QUrl());
--
--        EmitLoadFinished(false /* success */, toQt(validated_url), true /* isErrorPage */);
-+        emitLoadFinished(/* isErrorPage = */true);
-         return;
-     }
-     // Qt6: Consider getting rid of the error_description (Chromium already has)
-@@ -532,7 +528,7 @@ void WebContentsDelegateQt::DidFinishLoad(content::RenderFrameHost* render_frame
-         // Trigger LoadFinished signal for main frame's error page only.
-         if (!render_frame_host->GetParent()) {
-             m_viewClient->iconChanged(QUrl());
--            EmitLoadFinished(true /* success */, toQt(validated_url), true /* isErrorPage */);
-+            emitLoadFinished(/* isErrorPage = */true);
-         }
- 
-         return;
-@@ -550,7 +546,11 @@ void WebContentsDelegateQt::DidFinishLoad(content::RenderFrameHost* render_frame
-     int http_statuscode = entry ? entry->GetHttpStatusCode() : 0;
-     bool errorPageEnabled = webEngineSettings()->testAttribute(WebEngineSettings::ErrorPageEnabled);
-     bool triggersErrorPage = errorPageEnabled && (http_statuscode >= 400) && m_isDocumentEmpty;
--    EmitLoadFinished(http_statuscode < 400, toQt(validated_url), false /* isErrorPage */, http_statuscode, QString(), triggersErrorPage);
-+
-+    m_loadingInfo.success = http_statuscode < 400;
-+    m_loadingInfo.url = toQt(validated_url);
-+    m_loadingInfo.errorCode = http_statuscode;
-+    m_loadingInfo.triggersErrorPage = triggersErrorPage;
- }
- 
- void WebContentsDelegateQt::DidUpdateFaviconURL(content::RenderFrameHost *render_frame_host, const std::vector<blink::mojom::FaviconURLPtr> &candidates)
-diff --git a/src/core/web_contents_delegate_qt.h b/src/core/web_contents_delegate_qt.h
-index 5a3dff6e9..7149f6bff 100644
---- a/src/core/web_contents_delegate_qt.h
-+++ b/src/core/web_contents_delegate_qt.h
-@@ -216,9 +216,9 @@ private:
-                  WindowOpenDisposition disposition, const gfx::Rect &initial_pos,
-                  const QUrl &url,
-                  bool user_gesture);
--    void EmitLoadStarted(const QUrl &url, bool isErrorPage = false);
--    void EmitLoadFinished(bool success, const QUrl &url, bool isErrorPage = false, int errorCode = 0, const QString &errorDescription = QString(), bool triggersErrorPage = false);
--    void EmitLoadCommitted();
-+    void emitLoadStarted(bool isErrorPage = false);
-+    void emitLoadFinished(bool isErrorPage = false);
-+    void emitLoadCommitted();
- 
-     LoadingState determineLoadingState(content::WebContents *contents);
-     void setLoadingState(LoadingState state);
-@@ -242,9 +242,17 @@ private:
-     int m_desktopStreamCount = 0;
-     mutable bool m_pendingUrlUpdate = false;
- 
--    QMap<QUrl, int> m_loadProgressMap;
--    QUrl m_lastLoadedUrl;
--    bool m_isNavigationCommitted = false;
-+    struct LoadingInfo {
-+        bool success = false;
-+        int progress = -1;
-+        bool isLoading() const { return progress >= 0; }
-+        QUrl url;
-+        int errorCode = 0;
-+        QString errorDescription;
-+        bool triggersErrorPage = false;
-+        void clear() { *this = LoadingInfo(); }
-+    } m_loadingInfo;
-+
-     bool m_isDocumentEmpty = true;
-     base::WeakPtrFactory<WebContentsDelegateQt> m_weakPtrFactory { this };
- };
-diff --git a/src/webengine/api/qquickwebengineview.cpp b/src/webengine/api/qquickwebengineview.cpp
-index 6ab1c97cb..1de7f1c7f 100644
---- a/src/webengine/api/qquickwebengineview.cpp
-+++ b/src/webengine/api/qquickwebengineview.cpp
-@@ -496,11 +496,9 @@ Q_STATIC_ASSERT(static_cast<int>(WebEngineError::NoErrorDomain) == static_cast<i
- Q_STATIC_ASSERT(static_cast<int>(WebEngineError::CertificateErrorDomain) == static_cast<int>(QQuickWebEngineView::CertificateErrorDomain));
- Q_STATIC_ASSERT(static_cast<int>(WebEngineError::DnsErrorDomain) == static_cast<int>(QQuickWebEngineView::DnsErrorDomain));
- 
--void QQuickWebEngineViewPrivate::loadFinished(bool success, const QUrl &url, bool isErrorPage, int errorCode,
--                                              const QString &errorDescription, bool triggersErrorPage)
-+void QQuickWebEngineViewPrivate::loadFinished(bool success, const QUrl &url, bool isErrorPage, int errorCode, const QString &errorDescription)
- {
-     Q_Q(QQuickWebEngineView);
--    Q_UNUSED(triggersErrorPage);
- 
-     if (isErrorPage) {
- #if QT_CONFIG(webengine_testsupport)
-diff --git a/src/webengine/api/qquickwebengineview_p_p.h b/src/webengine/api/qquickwebengineview_p_p.h
-index ebe55c345..ec535298b 100644
---- a/src/webengine/api/qquickwebengineview_p_p.h
-+++ b/src/webengine/api/qquickwebengineview_p_p.h
-@@ -116,8 +116,7 @@ public:
-     void loadStarted(const QUrl &provisionalUrl, bool isErrorPage = false) override;
-     void loadCommitted() override;
-     void loadVisuallyCommitted() override;
--    void loadFinished(bool success, const QUrl &url, bool isErrorPage, int errorCode,
--                      const QString &errorDescription, bool triggersErrorPage) override;
-+    void loadFinished(bool success, const QUrl &url, bool isErrorPage, int errorCode, const QString &errorDescription) override;
-     void focusContainer() override;
-     void unhandledKeyEvent(QKeyEvent *event) override;
-     QSharedPointer<QtWebEngineCore::WebContentsAdapter>
-diff --git a/src/webenginewidgets/api/qwebenginepage.cpp b/src/webenginewidgets/api/qwebenginepage.cpp
-index e08afed44..b32c15039 100644
---- a/src/webenginewidgets/api/qwebenginepage.cpp
-+++ b/src/webenginewidgets/api/qwebenginepage.cpp
-@@ -282,28 +282,20 @@ void QWebEnginePagePrivate::loadStarted(const QUrl &provisionalUrl, bool isError
-     QTimer::singleShot(0, q, &QWebEnginePage::loadStarted);
- }
- 
--void QWebEnginePagePrivate::loadFinished(bool success, const QUrl &url, bool isErrorPage, int errorCode,
--                                         const QString &errorDescription, bool triggersErrorPage)
-+void QWebEnginePagePrivate::loadFinished(bool success, const QUrl &url, bool isErrorPage, int errorCode, const QString &errorDescription)
- {
-     Q_Q(QWebEnginePage);
-     Q_UNUSED(url);
-     Q_UNUSED(errorCode);
-     Q_UNUSED(errorDescription);
- 
--    if (isErrorPage) {
--        QTimer::singleShot(0, q, [q](){
--            emit q->loadFinished(false);
--        });
-+    if (isErrorPage)
-         return;
--    }
- 
-     isLoading = false;
--    Q_ASSERT((success && !triggersErrorPage) || !success);
--    if (!triggersErrorPage) {
--        QTimer::singleShot(0, q, [q, success](){
--            emit q->loadFinished(success);
--        });
--    }
-+    QTimer::singleShot(0, q, [q, success](){
-+        emit q->loadFinished(success);
-+    });
- }
- 
- void QWebEnginePagePrivate::didPrintPageToPdf(const QString &filePath, bool success)
-diff --git a/src/webenginewidgets/api/qwebenginepage_p.h b/src/webenginewidgets/api/qwebenginepage_p.h
-index 82ce99503..ae3ab5d25 100644
---- a/src/webenginewidgets/api/qwebenginepage_p.h
-+++ b/src/webenginewidgets/api/qwebenginepage_p.h
-@@ -107,8 +107,7 @@ public:
-     void loadStarted(const QUrl &provisionalUrl, bool isErrorPage = false) override;
-     void loadCommitted() override { }
-     void loadVisuallyCommitted() override { }
--    void loadFinished(bool success, const QUrl &url, bool isErrorPage, int errorCode,
--                      const QString &errorDescription, bool triggersErrorPage) override;
-+    void loadFinished(bool success, const QUrl &url, bool isErrorPage, int errorCode, const QString &errorDescription) override;
-     void focusContainer() override;
-     void unhandledKeyEvent(QKeyEvent *event) override;
-     QSharedPointer<QtWebEngineCore::WebContentsAdapter>

diff --git a/dev-qt/qtwebengine/qtwebengine-5.15.2_p20210421.ebuild b/dev-qt/qtwebengine/qtwebengine-5.15.2_p20210421.ebuild
deleted file mode 100644
index 21f59ef813e..00000000000
--- a/dev-qt/qtwebengine/qtwebengine-5.15.2_p20210421.ebuild
+++ /dev/null
@@ -1,218 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python2_7 )
-QTVER=$(ver_cut 1-3)
-inherit estack flag-o-matic multiprocessing python-any-r1 qt5-build
-
-DESCRIPTION="Library for rendering dynamic web content in Qt5 C++ and QML applications"
-HOMEPAGE="https://www.qt.io/"
-
-if [[ ${QT5_BUILD_TYPE} == release ]]; then
-	KEYWORDS="amd64 ~arm arm64 ~ppc64 x86"
-	if [[ ${PV} == ${QTVER}_p* ]]; then
-		SRC_URI="https://dev.gentoo.org/~asturm/distfiles/${P}.tar.xz"
-		S="${WORKDIR}/${P}"
-		QT5_BUILD_DIR="${S}_build"
-	fi
-else
-	EGIT_BRANCH="5.15"
-	EGIT_REPO_URI=(
-		"https://code.qt.io/qt/${QT5_MODULE}.git"
-		"https://github.com/qt/${QT5_MODULE}.git"
-	)
-	inherit git-r3
-fi
-
-# patchset based on https://github.com/chromium-ppc64le releases
-SRC_URI+=" ppc64? ( https://dev.gentoo.org/~gyakovlev/distfiles/${PN}-5.15.2-chromium87-ppc64le.tar.xz )"
-
-IUSE="alsa bindist designer geolocation +jumbo-build kerberos pulseaudio +system-ffmpeg +system-icu widgets"
-REQUIRED_USE="designer? ( widgets )"
-
-RDEPEND="
-	app-arch/snappy:=
-	dev-libs/glib:2
-	dev-libs/nspr
-	dev-libs/nss
-	dev-libs/expat
-	dev-libs/libevent:=
-	dev-libs/libxml2[icu]
-	dev-libs/libxslt
-	dev-libs/re2:=
-	~dev-qt/qtcore-${QTVER}
-	~dev-qt/qtdeclarative-${QTVER}
-	~dev-qt/qtgui-${QTVER}
-	~dev-qt/qtnetwork-${QTVER}
-	~dev-qt/qtprintsupport-${QTVER}
-	~dev-qt/qtwebchannel-${QTVER}[qml]
-	media-libs/fontconfig
-	media-libs/freetype
-	media-libs/harfbuzz:=
-	media-libs/lcms:2
-	media-libs/libjpeg-turbo:=
-	media-libs/libpng:0=
-	>=media-libs/libvpx-1.5:=[svc(+)]
-	media-libs/libwebp:=
-	media-libs/mesa[egl,X(+)]
-	media-libs/opus
-	sys-apps/dbus
-	sys-apps/pciutils
-	sys-libs/zlib[minizip]
-	virtual/libudev
-	x11-libs/libdrm
-	x11-libs/libX11
-	x11-libs/libXcomposite
-	x11-libs/libXcursor
-	x11-libs/libXdamage
-	x11-libs/libXext
-	x11-libs/libXfixes
-	x11-libs/libXi
-	x11-libs/libXrandr
-	x11-libs/libXrender
-	x11-libs/libXScrnSaver
-	x11-libs/libXtst
-	alsa? ( media-libs/alsa-lib )
-	designer? ( ~dev-qt/designer-${QTVER} )
-	geolocation? ( ~dev-qt/qtpositioning-${QTVER} )
-	kerberos? ( virtual/krb5 )
-	pulseaudio? ( media-sound/pulseaudio:= )
-	system-ffmpeg? ( media-video/ffmpeg:0= )
-	system-icu? ( >=dev-libs/icu-68.2:= )
-	widgets? (
-		~dev-qt/qtdeclarative-${QTVER}[widgets]
-		~dev-qt/qtwidgets-${QTVER}
-	)
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
-	${PYTHON_DEPS}
-	dev-util/gperf
-	dev-util/ninja
-	dev-util/re2c
-	net-libs/nodejs[ssl]
-	sys-devel/bison
-	ppc64? ( >=dev-util/gn-0.1807 )
-"
-
-PATCHES=(
-	"${FILESDIR}/${PN}-5.15.0-disable-fatal-warnings.patch" # bug 695446
-	"${FILESDIR}/${PN}-5.15.2_p20210224-chromium-87-v8-icu68.patch" # downstream, bug 757606
-	"${FILESDIR}/${PN}-5.15.2_p20210224-disable-git.patch" # downstream snapshot fix
-	"${FILESDIR}/${PN}-5.15.2_p20210406-glibc-2.33.patch" # by Fedora, bug 769989
-	"${FILESDIR}/${PN}-5.15.2_p20210406-gcc11.patch" # by Fedora, bug 768261
-	"${FILESDIR}/${PN}-5.15.2_p20210406-icu69.patch" # bug 781236
-	"${FILESDIR}/${P}-qtbug-91773.patch" # in Qt "5.15.5"
-)
-
-src_unpack() {
-	# bug 307861
-	eshopts_push -s extglob
-	if is-flagq '-g?(gdb)?([1-9])'; then
-		ewarn
-		ewarn "You have enabled debug info (probably have -g or -ggdb in your CFLAGS/CXXFLAGS)."
-		ewarn "You may experience really long compilation times and/or increased memory usage."
-		ewarn "If compilation fails, please try removing -g/-ggdb before reporting a bug."
-		ewarn
-	fi
-	eshopts_pop
-
-	case ${QT5_BUILD_TYPE} in
-		live)    git-r3_src_unpack ;&
-		release) default ;;
-	esac
-}
-
-src_prepare() {
-	if [[ ${PV} == ${QTVER}_p* ]]; then
-		# This is made from git, and for some reason will fail w/o .git directories.
-		mkdir -p .git src/3rdparty/chromium/.git || die
-
-		# We need to make sure this integrates well into Qt 5.15.2 installation.
-		# Otherwise revdeps fail w/o heavy changes. This is the simplest way to do it.
-		sed -e "/^MODULE_VERSION/s/5.*/${QTVER}/" -i .qmake.conf || die
-	fi
-
-	# QTBUG-88657 - jumbo-build could still make trouble
-	if ! use jumbo-build; then
-		sed -i -e 's|use_jumbo_build=true|use_jumbo_build=false|' \
-			src/buildtools/config/common.pri || die
-	fi
-
-	# bug 630834 - pass appropriate options to ninja when building GN
-	sed -e "s/\['ninja'/&, '-j$(makeopts_jobs)', '-l$(makeopts_loadavg "${MAKEOPTS}" 0)', '-v'/" \
-		-i src/3rdparty/chromium/tools/gn/bootstrap/bootstrap.py || die
-
-	# bug 620444 - ensure local headers are used
-	find "${S}" -type f -name "*.pr[fio]" | \
-		xargs sed -i -e 's|INCLUDEPATH += |&$${QTWEBENGINE_ROOT}_build/include $${QTWEBENGINE_ROOT}/include |' || die
-
-	if use system-icu; then
-		# Sanity check to ensure that bundled copy of ICU is not used.
-		# Whole src/3rdparty/chromium/third_party/icu directory cannot be deleted because
-		# src/3rdparty/chromium/third_party/icu/BUILD.gn is used by build system.
-		# If usage of headers of bundled copy of ICU occurs, then lists of shim headers in
-		# shim_headers("icui18n_shim") and shim_headers("icuuc_shim") in
-		# src/3rdparty/chromium/third_party/icu/BUILD.gn should be updated.
-		local file
-		while read file; do
-			echo "#error This file should not be used!" > "${file}" || die
-		done < <(find src/3rdparty/chromium/third_party/icu -type f "(" -name "*.c" -o -name "*.cpp" -o -name "*.h" ")" 2>/dev/null)
-	fi
-
-	qt_use_disable_config alsa webengine-alsa src/buildtools/config/linux.pri
-	qt_use_disable_config pulseaudio webengine-pulseaudio src/buildtools/config/linux.pri
-
-	qt_use_disable_mod designer webenginewidgets src/plugins/plugins.pro
-
-	qt_use_disable_mod widgets widgets src/src.pro
-
-	qt5-build_src_prepare
-
-	# we need to generate ppc64 stuff because upstream does not ship it yet
-	if use ppc64; then
-		einfo "Patching for ppc64le and generating build files"
-		eapply "${FILESDIR}/qtwebengine-5.15.2-enable-ppc64.patch"
-		pushd src/3rdparty/chromium > /dev/null || die
-		eapply -p0 "${WORKDIR}/${PN}-ppc64le"
-		popd > /dev/null || die
-		pushd src/3rdparty/chromium/third_party/libvpx > /dev/null || die
-		mkdir -vp source/config/linux/ppc64 || die
-		mkdir -p source/libvpx/test || die
-		touch source/libvpx/test/test.mk || die
-		./generate_gni.sh || die
-		popd >/dev/null || die
-	fi
-}
-
-src_configure() {
-	export NINJA_PATH=/usr/bin/ninja
-	export NINJAFLAGS="${NINJAFLAGS:--j$(makeopts_jobs) -l$(makeopts_loadavg "${MAKEOPTS}" 0) -v}"
-
-	local myqmakeargs=(
-		--
-		-no-build-qtpdf
-		-printing-and-pdf
-		-system-opus
-		-system-webp
-		$(usex alsa '-alsa' '-no-alsa')
-		$(usex bindist '-no-proprietary-codecs' '-proprietary-codecs')
-		$(usex geolocation '-webengine-geolocation' '-no-webengine-geolocation')
-		$(usex kerberos '-webengine-kerberos' '-no-webengine-kerberos')
-		$(usex pulseaudio '-pulseaudio' '-no-pulseaudio')
-		$(usex system-ffmpeg '-system-ffmpeg' '-qt-ffmpeg')
-		$(usex system-icu '-webengine-icu' '-no-webengine-icu')
-	)
-	qt5-build_src_configure
-}
-
-src_install() {
-	qt5-build_src_install
-
-	# bug 601472
-	if [[ ! -f ${D}${QT5_LIBDIR}/libQt5WebEngine.so ]]; then
-		die "${CATEGORY}/${PF} failed to build anything. Please report to https://bugs.gentoo.org/"
-	fi
-}


             reply	other threads:[~2021-07-22  9:35 UTC|newest]

Thread overview: 58+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-07-22  9:35 Andreas Sturmlechner [this message]
  -- strict thread matches above, loose matches on Subject: below --
2025-04-18 11:25 [gentoo-commits] repo/gentoo:master commit in: dev-qt/qtwebengine/files/, dev-qt/qtwebengine/ Ionen Wolkens
2025-03-31 15:57 Ionen Wolkens
2025-03-04 15:47 Ionen Wolkens
2024-12-04 12:19 Ionen Wolkens
2024-12-03  8:58 Ionen Wolkens
2024-12-02  7:23 Ionen Wolkens
2024-11-18  9:06 Ionen Wolkens
2024-10-30  2:55 Sam James
2024-09-13  2:45 Ionen Wolkens
2024-08-09  9:27 Ionen Wolkens
2024-07-29 20:20 Sam James
2024-05-23 16:04 Andreas Sturmlechner
2024-04-29 23:51 Sam James
2024-04-17  0:15 Ionen Wolkens
2023-12-19 20:33 Ionen Wolkens
2023-11-22 12:46 Ionen Wolkens
2023-11-21 22:36 Andreas Sturmlechner
2023-11-06 18:11 Andreas Sturmlechner
2023-08-10  3:53 Sam James
2023-08-04 12:35 Sam James
2023-07-26 13:31 Jimi Huotari
2023-06-10 13:33 Jimi Huotari
2023-06-10 13:33 Jimi Huotari
2023-04-26  3:54 Ionen Wolkens
2023-04-22 18:09 Andreas Sturmlechner
2023-03-27 12:51 Sam James
2023-01-08 21:45 Andreas Sturmlechner
2022-08-02 21:51 Sam James
2022-04-05 16:35 Andreas Sturmlechner
2022-04-05 16:35 Andreas Sturmlechner
2021-12-28 12:19 Andreas Sturmlechner
2021-12-25  0:10 Andreas Sturmlechner
2021-12-14 18:13 Andreas Sturmlechner
2021-11-14 19:53 Andreas Sturmlechner
2021-10-31  3:06 Sam James
2021-10-09 22:24 Sam James
2021-09-19 13:42 Andreas Sturmlechner
2021-09-14 16:27 Andreas Sturmlechner
2021-05-17 21:15 Andreas Sturmlechner
2021-04-20 22:23 Andreas Sturmlechner
2021-04-06 21:34 Andreas Sturmlechner
2021-03-24  0:50 Georgy Yakovlev
2021-03-12 20:08 Andreas Sturmlechner
2021-02-26 21:19 Andreas Sturmlechner
2021-02-23 20:27 Andreas Sturmlechner
2021-01-02  1:23 Andreas Sturmlechner
2020-11-05 22:51 Andreas Sturmlechner
2020-08-19 19:39 Andreas Sturmlechner
2020-05-17  8:18 Andreas Sturmlechner
2020-05-14 17:21 Andreas Sturmlechner
2020-04-29 20:44 Lars Wendler
2018-06-27 19:00 Andreas Sturmlechner
2018-02-07  2:04 Andreas Sturmlechner
2017-12-10  1:43 Michael Palimaka
2017-01-31  5:14 Davide Pesavento
2016-12-06  6:54 Michael Palimaka
2016-12-01 14:03 Michael Palimaka

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1626946534.1e28eaa9c45fdfeb0c75271d0cf52e427032dd76.asturm@gentoo \
    --to=asturm@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox