summaryrefslogtreecommitdiff
path: root/ext/node/polyfills/_brotli.js
diff options
context:
space:
mode:
authorBartek IwaƄczuk <biwanczuk@gmail.com>2024-08-02 15:44:32 +0100
committerGitHub <noreply@github.com>2024-08-02 16:44:32 +0200
commitb82a2f114c7c936bf4398669453513ace478cb1d (patch)
treea0dd2aa94cf61103b1dbcfa28a6c67feebf6eedd /ext/node/polyfills/_brotli.js
parent7495bcbf77349d708b249944a149c16f5ee0c667 (diff)
fix(ext/node): node:zlib coerces quality 10 to 9.5 (#24850)
Fixes https://github.com/denoland/deno/issues/24572
Diffstat (limited to 'ext/node/polyfills/_brotli.js')
-rw-r--r--ext/node/polyfills/_brotli.js9
1 files changed, 8 insertions, 1 deletions
diff --git a/ext/node/polyfills/_brotli.js b/ext/node/polyfills/_brotli.js
index 1524bf85c..6b4020724 100644
--- a/ext/node/polyfills/_brotli.js
+++ b/ext/node/polyfills/_brotli.js
@@ -121,13 +121,20 @@ export class BrotliCompress extends Transform {
}
function oneOffCompressOptions(options) {
- const quality = options?.params?.[constants.BROTLI_PARAM_QUALITY] ??
+ let quality = options?.params?.[constants.BROTLI_PARAM_QUALITY] ??
constants.BROTLI_DEFAULT_QUALITY;
const lgwin = options?.params?.[constants.BROTLI_PARAM_LGWIN] ??
constants.BROTLI_DEFAULT_WINDOW;
const mode = options?.params?.[constants.BROTLI_PARAM_MODE] ??
constants.BROTLI_MODE_GENERIC;
+ // NOTE(bartlomieju): currently the rust-brotli crate panics if the quality
+ // is set to 10. Coerce it down to 9.5 which is the maximum supported value.
+ // https://github.com/dropbox/rust-brotli/issues/216
+ if (quality == 10) {
+ quality = 9.5;
+ }
+
return {
quality,
lgwin,