forked from pool/nodejs-electron
- New upstream release 30.2.0 * Node 20.15.0 * Enabled the Windows Control Overlay API on Linux. * Expose systemPreferences to utilityProcess. * Fixed a focus issue when calling BrowserWindow.setTopBrowserView. * Fixed an issue where fetch-dependent interfaces could be missing in Web Workers with nodeIntegrationInWorker enabled. * Fixed an issue where control could fail to return properly after saving a dialog using showOpenDialogSync on Linux. * Fixes an issue where the user-specified default path did not work in some circumstances when using Linux dialogs. * Fixes potentially incorrect exit code in UtilityProcess. * (Leap 15.5) Fix heap buffer overflow in libaom (CVE-2024-5493 bsc#1225690) * Security fixes for V8: CVE-2024-6100, CVE-2024-6101 (bsc#1226504) * Fix use after free in Swiftshader (CVE-2024-6291 bsc#1226933) - Update to 30.1.2 XXXFIXMEXXX * ABI break: NODE_MODULE_VERSION is now 123 * Chromium 124.0.6367.243 * Node 20.14.0 * V8 12.4 * Added WebContentsView and BaseWindow, replacing the now-deprecated BrowserView APIs. * cross-origin iframes now use Permission Policy to access features * Removed: The --disable-color-correct-rendering switch * The inputFieldType property in the context-menu params has been removed * Removed: process.getIOCounters() * see https://www.electronjs.org/blog/electron-30-0 and https://github.com/electron/electron/releases/tag/v30.0.0 for more - Fedora: use bundled simdutf as the system version is too old - Drop no longer needed patches * chromium-122-avoid-SFINAE-TypeConverter.patch * chromium-122-BookmarkNode-missing-operator.patch * chromium-98-EnumTable-crash.patch * chromium-gcc11.patch * CVE-2024-30260-undici-clear-proxy-authorization.patch * CVE-2024-30261-undici-fetch-integrity.patch * ElectronDesktopWindowTreeHostLinux-OnWindowTiledStateChanged-crash.patch * grid_sizing_tree-Wchanges-meaning.patch * hit_test_request-missing-optional.patch * InternalAllocator-too-many-initializers.patch * material_color_utilities-tones-missing-round.patch * nested-nested-nested-nested-nested-nested-regex-patterns.patch * perfetto-numeric_storage-double_t.patch * plus_address_types-missing-optional.patch * race_network_request_write_buffer_manager-missing-optional.patch * resolution_monitor-missing-bitset.patch * script_promise_resolver-explicit-specialization.patch * search_engine_choice_service-missing-optional.patch * text_break_iterator-icu74-breakAllLineBreakClassTable-should-be-consistent.patch * v8-instance-type-inl-constexpr-used-before-its-definition.patch - Drop no longer needed -Wno-error=narrowing from CXXFLAGS - Add patches to fix build * chromium-124-shims.patch * enable_stack_trace_line_numbers-symbol_level.patch * angle-FramebufferVk-powf.patch * licenses.py-FileNotFoundError.patch * span_reader-missing-optional.patch * bitset-missing-uint8_t-memcpy.patch * temporal_scalability_id_extractor-missing-bitset.patch * gpu_adapter_info-missing-optional.patch * first_party_sets_handler_database_helper-missing-optional.patch * async_iterable-forwarding.patch * preview_cancel_reason-missing-string.patch * script_streamer-atomic-include.patch - Add -Wno-packed-not-aligned -Wno-address to CXXFLAGS to suppress build logspam - Add libaom_av1_encoder-aom37-AV1E_SET_MAX_CONSEC_FRAME_DROP_CBR.patch to build with old libaom - Add backported DesktopNativeWidgetAura-HandleActivationChanged-crash.patch - Revert upstream changes which introduce a use-after-free bug causing crashes (bsc#1224178 deb#1067886) * bad-font-gc0000.patch * bad-font-gc000.patch * bad-font-gc00.patch * bad-font-gc0.patch * bad-font-gc11.patch * bad-font-gc1.patch * bad-font-gc2.patch * bad-font-gc3.patch OBS-URL: https://build.opensuse.org/request/show/1187058 OBS-URL: https://build.opensuse.org/package/show/devel:languages:nodejs/nodejs-electron?expand=0&rev=159
99 lines
4.1 KiB
Diff
99 lines
4.1 KiB
Diff
From e4d212302ed2e71c224ae67bdaf2a2816be34f21 Mon Sep 17 00:00:00 2001
|
|
From: Mattias Buelens <mattias.buelens@gmail.com>
|
|
Date: Tue, 26 Mar 2024 19:25:54 +0000
|
|
Subject: [PATCH] streams: Fix gcc compatibility for
|
|
ReadableStream::valuesForBinding()
|
|
|
|
The perfect forwarding technique we used turned out to be incompatible
|
|
with gcc. Revert to something simpler.
|
|
|
|
Bug: 40612900
|
|
Change-Id: I45f3588354fe96159c7f84d969ac222a935b1c1a
|
|
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5372645
|
|
Reviewed-by: Adam Rice <ricea@chromium.org>
|
|
Reviewed-by: Yuki Shiino <yukishiino@chromium.org>
|
|
Commit-Queue: Adam Rice <ricea@chromium.org>
|
|
Cr-Commit-Position: refs/heads/main@{#1278534}
|
|
---
|
|
.../bindings/core/v8/async_iterable.h | 32 +++++++++----------
|
|
1 file changed, 16 insertions(+), 16 deletions(-)
|
|
|
|
diff --git a/third_party/blink/renderer/bindings/core/v8/async_iterable.h b/third_party/blink/renderer/bindings/core/v8/async_iterable.h
|
|
index 115ee5303414c..8a0d085b8174e 100644
|
|
--- a/third_party/blink/renderer/bindings/core/v8/async_iterable.h
|
|
+++ b/third_party/blink/renderer/bindings/core/v8/async_iterable.h
|
|
@@ -200,42 +200,42 @@ class PairAsyncIterable {
|
|
PairAsyncIterable(const PairAsyncIterable&) = delete;
|
|
PairAsyncIterable& operator=(const PairAsyncIterable&) = delete;
|
|
|
|
+ template <typename... ArgsAndExceptionState>
|
|
AsyncIteratorType* keysForBinding(
|
|
ScriptState* script_state,
|
|
- std::convertible_to<InitArgs> auto&&... args,
|
|
- ExceptionState& exception_state) {
|
|
+ ArgsAndExceptionState&&... args_and_exception_state) {
|
|
const auto kind = IterationSource::Kind::kKey;
|
|
IterationSource* source = CreateIterationSource(
|
|
- script_state, kind, std::forward<decltype(args)>(args)...,
|
|
- exception_state);
|
|
+ script_state, kind,
|
|
+ std::forward<ArgsAndExceptionState>(args_and_exception_state)...);
|
|
if (!source) {
|
|
return nullptr;
|
|
}
|
|
return MakeGarbageCollected<AsyncIteratorType>(source);
|
|
}
|
|
|
|
+ template <typename... ArgsAndExceptionState>
|
|
AsyncIteratorType* valuesForBinding(
|
|
ScriptState* script_state,
|
|
- std::convertible_to<InitArgs> auto&&... args,
|
|
- ExceptionState& exception_state) {
|
|
+ ArgsAndExceptionState&&... args_and_exception_state) {
|
|
const auto kind = IterationSource::Kind::kValue;
|
|
IterationSource* source = CreateIterationSource(
|
|
- script_state, kind, std::forward<decltype(args)>(args)...,
|
|
- exception_state);
|
|
+ script_state, kind,
|
|
+ std::forward<ArgsAndExceptionState>(args_and_exception_state)...);
|
|
if (!source) {
|
|
return nullptr;
|
|
}
|
|
return MakeGarbageCollected<AsyncIteratorType>(source);
|
|
}
|
|
|
|
+ template <typename... ArgsAndExceptionState>
|
|
AsyncIteratorType* entriesForBinding(
|
|
ScriptState* script_state,
|
|
- std::convertible_to<InitArgs> auto&&... args,
|
|
- ExceptionState& exception_state) {
|
|
+ ArgsAndExceptionState&&... args_and_exception_state) {
|
|
const auto kind = IterationSource::Kind::kKeyValue;
|
|
IterationSource* source = CreateIterationSource(
|
|
- script_state, kind, std::forward<decltype(args)>(args)...,
|
|
- exception_state);
|
|
+ script_state, kind,
|
|
+ std::forward<ArgsAndExceptionState>(args_and_exception_state)...);
|
|
if (!source) {
|
|
return nullptr;
|
|
}
|
|
@@ -274,14 +274,14 @@ class ValueAsyncIterable {
|
|
ValueAsyncIterable(const ValueAsyncIterable&) = delete;
|
|
ValueAsyncIterable& operator=(const ValueAsyncIterable&) = delete;
|
|
|
|
+ template <typename... ArgsAndExceptionState>
|
|
AsyncIteratorType* valuesForBinding(
|
|
ScriptState* script_state,
|
|
- std::convertible_to<InitArgs> auto&&... args,
|
|
- ExceptionState& exception_state) {
|
|
+ ArgsAndExceptionState&&... args_and_exception_state) {
|
|
const auto kind = IterationSource::Kind::kValue;
|
|
IterationSource* source = CreateIterationSource(
|
|
- script_state, kind, std::forward<decltype(args)>(args)...,
|
|
- exception_state);
|
|
+ script_state, kind,
|
|
+ std::forward<ArgsAndExceptionState>(args_and_exception_state)...);
|
|
if (!source) {
|
|
return nullptr;
|
|
}
|