summaryrefslogtreecommitdiff
path: root/ext/node/ops/zlib/mod.rs
diff options
context:
space:
mode:
authorDivy Srivastava <dj.srivastava23@gmail.com>2023-08-11 17:12:35 +0530
committerGitHub <noreply@github.com>2023-08-11 11:42:35 +0000
commit2f00b0add476bb151bc3a713da165296906cfc2a (patch)
treeba43cae2dd787b8e0f0aae102210ecfb65aa2f90 /ext/node/ops/zlib/mod.rs
parent65db8814c31464f2bc2a04dd5ffbaa71361c9f80 (diff)
fix(ext/node): support dictionary option in zlib init (#20035)
Fixes https://github.com/denoland/deno/issues/19540
Diffstat (limited to 'ext/node/ops/zlib/mod.rs')
-rw-r--r--ext/node/ops/zlib/mod.rs8
1 files changed, 6 insertions, 2 deletions
diff --git a/ext/node/ops/zlib/mod.rs b/ext/node/ops/zlib/mod.rs
index 3d58d16f9..2ddf6f2cd 100644
--- a/ext/node/ops/zlib/mod.rs
+++ b/ext/node/ops/zlib/mod.rs
@@ -344,7 +344,7 @@ pub fn op_zlib_init(
window_bits: i32,
mem_level: i32,
strategy: i32,
- dictionary: Option<&[u8]>,
+ dictionary: &[u8],
) -> Result<i32, AnyError> {
let resource = zlib(state, handle)?;
let mut zlib = resource.inner.borrow_mut();
@@ -373,7 +373,11 @@ pub fn op_zlib_init(
zlib.init_stream()?;
- zlib.dictionary = dictionary.map(|buf| buf.to_vec());
+ zlib.dictionary = if !dictionary.is_empty() {
+ Some(dictionary.to_vec())
+ } else {
+ None
+ };
Ok(zlib.err)
}