Skip to content

Commit 6572cf5

Browse files
authored
src: avoid using ToLocalChecked in crypto_hash
And other minor cleanups Signed-off-by: James M Snell <jasnell@gmail.com> PR-URL: #64668 Reviewed-By: Filip Skokan <panva.ip@gmail.com> Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
1 parent 7d42b0b commit 6572cf5

1 file changed

Lines changed: 13 additions & 7 deletions

File tree

src/crypto/crypto_hash.cc

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ namespace node {
3030
using ncrypto::DataPointer;
3131
using ncrypto::EVPMDCtxPointer;
3232
using ncrypto::MarkPopErrorOnReturn;
33+
using v8::ArrayBuffer;
3334
using v8::Context;
3435
using v8::FunctionCallbackInfo;
3536
using v8::FunctionTemplate;
@@ -43,8 +44,11 @@ using v8::Maybe;
4344
using v8::MaybeLocal;
4445
using v8::Name;
4546
using v8::Nothing;
47+
using v8::Null;
4648
using v8::Object;
49+
using v8::String;
4750
using v8::Uint32;
51+
using v8::Uint8Array;
4852
using v8::Value;
4953

5054
namespace crypto {
@@ -195,12 +199,12 @@ void Hash::GetCachedAliases(const FunctionCallbackInfo<Value>& args) {
195199
values.reserve(size);
196200
for (auto& [alias, id] : env->alias_to_md_id_map) {
197201
names.push_back(OneByteString(isolate, alias));
198-
values.push_back(v8::Uint32::New(isolate, id));
202+
values.push_back(Uint32::New(isolate, id));
199203
}
200204
#else
201205
CHECK(env->alias_to_md_id_map.empty());
202206
#endif
203-
Local<Value> prototype = v8::Null(isolate);
207+
Local<Value> prototype = Null(isolate);
204208
Local<Object> result =
205209
Object::New(isolate, prototype, names.data(), values.data(), size);
206210
args.GetReturnValue().Set(result);
@@ -233,7 +237,7 @@ const EVP_MD* GetDigestImplementation(Environment* env,
233237
if (algorithm_cache.As<Object>()
234238
->Set(isolate->GetCurrentContext(),
235239
algorithm,
236-
v8::Int32::New(isolate, result.cache_id))
240+
Int32::New(isolate, result.cache_id))
237241
.IsNothing()) {
238242
return nullptr;
239243
}
@@ -333,11 +337,13 @@ void Hash::OneShotDigest(const FunctionCallbackInfo<Value>& args) {
333337

334338
if (output_length == 0) {
335339
if (output_enc == BUFFER) {
336-
Local<v8::ArrayBuffer> ab = v8::ArrayBuffer::New(isolate, 0);
337-
args.GetReturnValue().Set(
338-
Buffer::New(isolate, ab, 0, 0).ToLocalChecked());
340+
Local<Uint8Array> u8;
341+
if (Buffer::New(isolate, ArrayBuffer::New(isolate, 0), 0, 0)
342+
.ToLocal(&u8)) {
343+
args.GetReturnValue().Set(u8);
344+
}
339345
} else {
340-
args.GetReturnValue().Set(v8::String::Empty(isolate));
346+
args.GetReturnValue().Set(String::Empty(isolate));
341347
}
342348
return;
343349
}

0 commit comments

Comments
 (0)