diff options
author | 2023-02-05 06:17:21 -0800 | |
---|---|---|
committer | 2023-02-05 06:17:21 -0800 | |
commit | 864913684558466f8517de9d474180a6bc19915c (patch) | |
tree | 363ba440cc027052934d1ea5acdbfa34ad9279aa /src/bun.js/bindings/JSBuffer.cpp | |
parent | e8fe6dd2f8720303bd730742879cb7c00ea38b56 (diff) | |
download | bun-864913684558466f8517de9d474180a6bc19915c.tar.gz bun-864913684558466f8517de9d474180a6bc19915c.tar.zst bun-864913684558466f8517de9d474180a6bc19915c.zip |
`substringSharingImpl` allocates, do not use
Diffstat (limited to 'src/bun.js/bindings/JSBuffer.cpp')
-rw-r--r-- | src/bun.js/bindings/JSBuffer.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/bun.js/bindings/JSBuffer.cpp b/src/bun.js/bindings/JSBuffer.cpp index c985a7505..a6c735af7 100644 --- a/src/bun.js/bindings/JSBuffer.cpp +++ b/src/bun.js/bindings/JSBuffer.cpp @@ -729,7 +729,10 @@ static inline JSC::EncodedJSValue jsBufferConstructorFunction_concatBody(JSC::JS static inline JSC::EncodedJSValue jsBufferConstructorFunction_isEncodingBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame) { auto& vm = JSC::getVM(lexicalGlobalObject); - auto encoding_ = callFrame->argument(0).toString(lexicalGlobalObject); + auto* encoding_ = callFrame->argument(0).toStringOrNull(lexicalGlobalObject); + if (!encoding_) + return JSValue::encode(jsBoolean(false)); + std::optional<BufferEncodingType> encoded = parseEnumeration<BufferEncodingType>(*lexicalGlobalObject, encoding_); return JSValue::encode(jsBoolean(!!encoded)); } |