Closed
Description
Version
18.16.0, 20.0.0
Platform
Darwin Nics-Air.home 22.4.0 Darwin Kernel Version 22.4.0: Mon Mar 6 21:01:02 PST 2023; root:xnu-8796.101.5~3/RELEASE_ARM64_T8112 arm64
Subsystem
No response
What steps will reproduce the bug?
node -e "require.resolve('./a', { paths: [{}] })"
How often does it reproduce? Is there a required condition?
Always
What is the expected behavior? Why is that the expected behavior?
It should report a JS error, not crash
What do you see instead?
node[38018]: ../src/node_file.cc:1103:void node::fs::InternalModuleStat(const FunctionCallbackInfo<v8::Value> &): Assertion `args[0]->IsString()' failed.
1: 0x1002c94fc node::Abort() [/usr/local/bin/node]
2: 0x1002c92c8 node::PrintCaughtException(v8::Isolate*, v8::Local<v8::Context>, v8::TryCatch const&) [/usr/local/bin/node]
3: 0x1002d87fc node::fs::Stat(v8::FunctionCallbackInfo<v8::Value> const&) [/usr/local/bin/node]
4: 0x10048fa1c v8::internal::FunctionCallbackArguments::Call(v8::internal::CallHandlerInfo) [/usr/local/bin/node]
5: 0x10048f518 v8::internal::MaybeHandle<v8::internal::Object> v8::internal::(anonymous namespace)::HandleApiCallHelper<false>(v8::internal::Isolate*, v8::internal::Handle<v8::internal::HeapObject>, v8::internal::Handle<v8::internal::HeapObject>, v8::internal::Handle<v8::internal::FunctionTemplateInfo>, v8::internal::Handle<v8::internal::Object>, v8::internal::BuiltinArguments) [/usr/local/bin/node]
6: 0x10048ed44 v8::internal::Builtin_HandleApiCall(int, unsigned long*, v8::internal::Isolate*) [/usr/local/bin/node]
7: 0x100c7d18c Builtins_CEntry_Return1_DontSaveFPRegs_ArgvOnStack_BuiltinExit [/usr/local/bin/node]
8: 0x100c08198 Builtins_InterpreterEntryTrampoline [/usr/local/bin/node]
9: 0x100c08198 Builtins_InterpreterEntryTrampoline [/usr/local/bin/node]
10: 0x100c08198 Builtins_InterpreterEntryTrampoline [/usr/local/bin/node]
11: 0x100c08198 Builtins_InterpreterEntryTrampoline [/usr/local/bin/node]
12: 0x100c08198 Builtins_InterpreterEntryTrampoline [/usr/local/bin/node]
13: 0x100c064d0 Builtins_JSEntryTrampoline [/usr/local/bin/node]
14: 0x100c06164 Builtins_JSEntry [/usr/local/bin/node]
15: 0x10054b85c v8::internal::(anonymous namespace)::Invoke(v8::internal::Isolate*, v8::internal::(anonymous namespace)::InvokeParams const&) [/usr/local/bin/node]
16: 0x10054ba30 v8::internal::Execution::CallScript(v8::internal::Isolate*, v8::internal::Handle<v8::internal::JSFunction>, v8::internal::Handle<v8::internal::Object>, v8::internal::Handle<v8::internal::Object>) [/usr/local/bin/node]
17: 0x1004270f8 v8::Script::Run(v8::Local<v8::Context>, v8::Local<v8::Data>) [/usr/local/bin/node]
18: 0x1002be510 node::contextify::ContextifyScript::EvalMachine(v8::Local<v8::Context>, node::Environment*, long long, bool, bool, bool, std::__1::shared_ptr<v8::MicrotaskQueue>, v8::FunctionCallbackInfo<v8::Value> const&) [/usr/local/bin/node]
19: 0x1002bdea0 node::contextify::ContextifyScript::RunInContext(v8::FunctionCallbackInfo<v8::Value> const&) [/usr/local/bin/node]
20: 0x10048fa1c v8::internal::FunctionCallbackArguments::Call(v8::internal::CallHandlerInfo) [/usr/local/bin/node]
21: 0x10048f518 v8::internal::MaybeHandle<v8::internal::Object> v8::internal::(anonymous namespace)::HandleApiCallHelper<false>(v8::internal::Isolate*, v8::internal::Handle<v8::internal::HeapObject>, v8::internal::Handle<v8::internal::HeapObject>, v8::internal::Handle<v8::internal::FunctionTemplateInfo>, v8::internal::Handle<v8::internal::Object>, v8::internal::BuiltinArguments) [/usr/local/bin/node]
22: 0x10048ed44 v8::internal::Builtin_HandleApiCall(int, unsigned long*, v8::internal::Isolate*) [/usr/local/bin/node]
23: 0x100c7d18c Builtins_CEntry_Return1_DontSaveFPRegs_ArgvOnStack_BuiltinExit [/usr/local/bin/node]
24: 0x100c08198 Builtins_InterpreterEntryTrampoline [/usr/local/bin/node]
25: 0x100c08198 Builtins_InterpreterEntryTrampoline [/usr/local/bin/node]
26: 0x100c08198 Builtins_InterpreterEntryTrampoline [/usr/local/bin/node]
27: 0x100c08198 Builtins_InterpreterEntryTrampoline [/usr/local/bin/node]
28: 0x100c08198 Builtins_InterpreterEntryTrampoline [/usr/local/bin/node]
29: 0x100c08198 Builtins_InterpreterEntryTrampoline [/usr/local/bin/node]
30: 0x100c064d0 Builtins_JSEntryTrampoline [/usr/local/bin/node]
31: 0x100c06164 Builtins_JSEntry [/usr/local/bin/node]
32: 0x10054b85c v8::internal::(anonymous namespace)::Invoke(v8::internal::Isolate*, v8::internal::(anonymous namespace)::InvokeParams const&) [/usr/local/bin/node]
33: 0x10054ad90 v8::internal::Execution::Call(v8::internal::Isolate*, v8::internal::Handle<v8::internal::Object>, v8::internal::Handle<v8::internal::Object>, int, v8::internal::Handle<v8::internal::Object>*) [/usr/local/bin/node]
34: 0x10043b124 v8::Function::Call(v8::Local<v8::Context>, v8::Local<v8::Value>, int, v8::Local<v8::Value>*) [/usr/local/bin/node]
35: 0x100336290 node::Realm::ExecuteBootstrapper(char const*, std::__1::vector<v8::Local<v8::Value>, std::__1::allocator<v8::Local<v8::Value>>>*) [/usr/local/bin/node]
36: 0x1002932a8 node::StartExecution(node::Environment*, char const*) [/usr/local/bin/node]
37: 0x1002931f0 node::StartExecution(node::Environment*, std::__1::function<v8::MaybeLocal<v8::Value> (node::StartExecutionCallbackInfo const&)>) [/usr/local/bin/node]
38: 0x10021c698 node::LoadEnvironment(node::Environment*, std::__1::function<v8::MaybeLocal<v8::Value> (node::StartExecutionCallbackInfo const&)>) [/usr/local/bin/node]
39: 0x1003068bc node::NodeMainInstance::Run() [/usr/local/bin/node]
40: 0x100296028 node::LoadSnapshotDataAndRun(node::SnapshotData const**, node::InitializationResult const*) [/usr/local/bin/node]
41: 0x1002962b4 node::Start(int, char**) [/usr/local/bin/node]
42: 0x19b34bf28 start [/usr/lib/dyld]
Additional information
This bug seems simple enough that I would like to try opening a PR
Metadata
Metadata
Assignees
Labels
No labels