diff --git a/src/node_credentials.cc b/src/node_credentials.cc index d7be988d978b8a..d552a501726396 100644 --- a/src/node_credentials.cc +++ b/src/node_credentials.cc @@ -44,12 +44,13 @@ bool SafeGetenv(const char* key, std::string* text, Environment* env) { if (env != nullptr) { HandleScope handle_scope(env->isolate()); TryCatch ignore_errors(env->isolate()); - MaybeLocal<String> value = env->env_vars()->Get( + MaybeLocal<String> maybe_value = env->env_vars()->Get( env->isolate(), String::NewFromUtf8(env->isolate(), key, NewStringType::kNormal) .ToLocalChecked()); - if (value.IsEmpty()) goto fail; - String::Utf8Value utf8_value(env->isolate(), value.ToLocalChecked()); + Local<String> value; + if (!maybe_value.ToLocal(&value)) goto fail; + String::Utf8Value utf8_value(env->isolate(), value); if (*utf8_value == nullptr) goto fail; *text = std::string(*utf8_value, utf8_value.length()); return true;