summaryrefslogtreecommitdiff
path: root/ext/web/lib.rs
diff options
context:
space:
mode:
Diffstat (limited to 'ext/web/lib.rs')
-rw-r--r--ext/web/lib.rs15
1 files changed, 8 insertions, 7 deletions
diff --git a/ext/web/lib.rs b/ext/web/lib.rs
index de8984232..92cfcceeb 100644
--- a/ext/web/lib.rs
+++ b/ext/web/lib.rs
@@ -130,25 +130,27 @@ pub fn init<P: TimersPermission + 'static>(
#[op]
fn op_base64_decode(input: String) -> Result<ZeroCopyBuf, AnyError> {
let mut s = input.into_bytes();
- let decoded_len = forgiving_base64_decode(&mut s)?;
+ let decoded_len = forgiving_base64_decode_inplace(&mut s)?;
s.truncate(decoded_len);
Ok(s.into())
}
#[op]
fn op_base64_atob(mut s: ByteString) -> Result<ByteString, AnyError> {
- let decoded_len = forgiving_base64_decode(&mut s)?;
+ let decoded_len = forgiving_base64_decode_inplace(&mut s)?;
s.truncate(decoded_len);
Ok(s)
}
/// See <https://infra.spec.whatwg.org/#forgiving-base64>
#[inline]
-fn forgiving_base64_decode(input: &mut [u8]) -> Result<usize, AnyError> {
+fn forgiving_base64_decode_inplace(
+ input: &mut [u8],
+) -> Result<usize, AnyError> {
let error: _ =
|| DomExceptionInvalidCharacterError::new("Failed to decode base64");
- let decoded = base64_simd::Base64::forgiving_decode_inplace(input)
- .map_err(|_| error())?;
+ let decoded =
+ base64_simd::forgiving_decode_inplace(input).map_err(|_| error())?;
Ok(decoded.len())
}
@@ -165,8 +167,7 @@ fn op_base64_btoa(s: ByteString) -> String {
/// See <https://infra.spec.whatwg.org/#forgiving-base64>
#[inline]
fn forgiving_base64_encode(s: &[u8]) -> String {
- const BASE64_STANDARD: base64_simd::Base64 = base64_simd::Base64::STANDARD;
- BASE64_STANDARD.encode_to_boxed_str(s).into_string()
+ base64_simd::STANDARD.encode_to_string(s)
}
#[op]