1
0
Files
nodejs-electron/brotli-remove-shared-dictionary.patch

71 lines
3.0 KiB
Diff
Raw Permalink Normal View History

Accepting request 1187058 from home:dziobian:gulgul-ultron:19 - 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
2024-07-12 10:45:39 +00:00
Partially revert https://github.com/chromium/chromium/commit/c1dc375391403442935f1305f5a9782dd1c33f3a
and disable dependent code. This removes `brs` from Accept-Encoding list.
This feature does not build with brotli < 1.1
--- src/net/filter/brotli_source_stream.cc.orig 2023-10-12 17:25:42.094020700 +0200
+++ src/net/filter/brotli_source_stream.cc 2023-10-12 22:43:53.790708700 +0200
@@ -13,7 +11,6 @@
#include "base/metrics/histogram_macros.h"
#include "net/base/io_buffer.h"
#include "third_party/brotli/include/brotli/decode.h"
-#include "third_party/brotli/include/brotli/shared_dictionary.h"
namespace net {
@@ -25,21 +22,11 @@ const char kBrotli[] = "BROTLI";
// Brotli format specification: http://www.ietf.org/id/draft-alakuijala-brotli.
class BrotliSourceStream : public FilterSourceStream {
public:
- explicit BrotliSourceStream(std::unique_ptr<SourceStream> upstream,
- scoped_refptr<IOBuffer> dictionary = nullptr,
- size_t dictionary_size = 0u)
- : FilterSourceStream(SourceStream::TYPE_BROTLI, std::move(upstream)),
- dictionary_(std::move(dictionary)),
- dictionary_size_(dictionary_size) {
+ explicit BrotliSourceStream(std::unique_ptr<SourceStream> upstream)
+ : FilterSourceStream(SourceStream::TYPE_BROTLI, std::move(upstream)) {
brotli_state_ =
BrotliDecoderCreateInstance(AllocateMemory, FreeMemory, this);
CHECK(brotli_state_);
- if (dictionary_) {
- BROTLI_BOOL result = BrotliDecoderAttachDictionary(
- brotli_state_, BROTLI_SHARED_DICTIONARY_RAW, dictionary_size_,
- reinterpret_cast<const unsigned char*>(dictionary_->data()));
- CHECK(result);
- }
}
BrotliSourceStream(const BrotliSourceStream&) = delete;
@@ -176,9 +163,6 @@ class BrotliSourceStream : public Filter
free(&array[-1]);
}
- const scoped_refptr<IOBuffer> dictionary_;
- const size_t dictionary_size_;
-
raw_ptr<BrotliDecoderState, DanglingUntriaged> brotli_state_;
DecodingStatus decoding_status_ = DecodingStatus::DECODING_IN_PROGRESS;
@@ -200,8 +184,7 @@ std::unique_ptr<FilterSourceStream> Crea
std::unique_ptr<SourceStream> previous,
scoped_refptr<IOBuffer> dictionary,
size_t dictionary_size) {
- return std::make_unique<BrotliSourceStream>(
- std::move(previous), std::move(dictionary), dictionary_size);
+ return nullptr;
}
} // namespace net
--- src/services/network/public/cpp/features.cc.old 2024-02-26 14:40:47.616464200 +0000
+++ src/services/network/public/cpp/features.cc 2024-02-26 18:32:53.080944900 +0000
@@ -383,7 +383,7 @@ BASE_FEATURE(kPrefetchNoVarySearch,
// decompresses the response body using the dictionary.
BASE_FEATURE(kCompressionDictionaryTransportBackend,
"CompressionDictionaryTransportBackend",
- base::FEATURE_ENABLED_BY_DEFAULT);
+ base::FEATURE_DISABLED_BY_DEFAULT);
// When both this feature and the kCompressionDictionaryTransportBackend feature
// are enabled, the following will happen: