forked from pool/nodejs-electron
* Node 20.16.0 OBS-URL: https://build.opensuse.org/package/show/devel:languages:nodejs/nodejs-electron?expand=0&rev=169
71 lines
3.0 KiB
Diff
71 lines
3.0 KiB
Diff
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:
|
|
|