Methods not returning after throwing Javascript exception
还没有人认领这个 Issue。
评估
调研方向
Start in 6_object_wrap_example/node-addon-api/myobject.cc, especially the constructor path around line 28, and reproduce the no-argument call. Check the node-addon-api exception-handling guidance, then ensure the example stops after ThrowAsJavaScriptException so the documented error is preserved and the unwrapping case does not continue into a segmentation fault.
由索引模型根据 Issue 内容生成。
描述
In the "6_object_wrap_example/node-addon-api", I tried to test what would happen when calling the constructor without arguments and I noticed that the actual exception thrown ("A number was expected") is different from the one in the code ("Number expected").
According to node-addon-api docs, when C++ exceptions are disabled you need to return immediately after calling ThrowAsJavaScriptException. So I would expect something like:
if (length <= 0 || !info[0].IsNumber()) {
Napi::TypeError::New(env, "Number expected").ThrowAsJavaScriptException();
return;
}
I think that the exception thrown is not the one from line 28 of myobject.cc, but another one thrown automatically when trying to convert the parameter to a number.
I tried to move one step further (following this tutorial) and unwrapping a Javascript object, and I get a segmentation fault when using the constructor without arguments because the code is not stopping after reaching the line with ThrowAsJavaScriptException.
- 主要语言
- C++
- 星标
- 2.6k
- 派生
- 598
- PR 合并指标
- 30 天内没有已合并 PR
环境准备
- 没有 Dockerfile 或 Docker Compose 文件
- 有 Pull Request 模板
- 阅读贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
nodejs/node-addon-examples 的其他 Issue
-
enhancement
难度 4/5 3-5 天 新手友好度 38/100
nodejs/node-addon-examples#585 · 1 个 reaction ·
-
难度 3/5 1-2 天 新手友好度 38/100
nodejs/node-addon-examples#530 · 1 条评论 ·
-
难度 4/5 3-5 天 新手友好度 35/100
nodejs/node-addon-examples#445 ·
-
难度 3/5 1-2 天 新手友好度 32/100
nodejs/node-addon-examples#444 · 1 条评论 ·
-
难度 3/5 1-2 天 新手友好度 35/100
nodejs/node-addon-examples#381 ·
查看 nodejs/node-addon-examples 的全部 Issue
相似的 Issue
-
`BLMPOP` with COUNT 0 or numkeys 0 hangs可能已有人在做 @ggyuchive 今天认领。 未关闭bug
难度 2/5 1-3 小时 新手友好度 78/100
维护者通常 1 天内回复
-
needs triage
难度 2/5 1-3 小时 新手友好度 72/100
维护者通常 1 天内回复
-
gObjectFullbrightAlphaMaskProgram in newview/llviewershadermgr.cpp is defined but never initialized未关闭bug triage
难度 1/5 1 小时以内 新手友好度 78/100
secondlife/viewer#6620 ·
维护者通常 1 天内回复
-
bug core p3
难度 2/5 1-3 小时 新手友好度 72/100
RunanywhereAI/runanywhere-sdks#1258 ·
维护者通常 1 天内回复
-
ripwire-router skill: stale language list (15 vs 26 supported; Elixir/PHP/Kotlin wrongly listed as unsupported)可能已有人在做 @joyful-ii-V-I 今天认领。 未关闭
难度 2/5 1-3 小时 新手友好度 80/100
redhat-et/ripwire#521 · 1 条评论 ·
维护者通常 1 天内回复