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
- 派生
- 602
- PR 合并指标
- 30 天内没有已合并 PR
贡献指南
从这里开始
- 先读完整个 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
-
Website Doc Typo 未关闭
难度 1/5 1 小时以内 新手友好度 92/100
-
难度 1/5 1-3 小时 新手友好度 92/100
autowarefoundation/autoware_universe#13413 ·
-
难度 2/5 1-3 小时 新手友好度 88/100
-
automated-analysis bug memory-safety
难度 2/5 1-3 小时 新手友好度 68/100
-
难度 2/5 1-3 小时 新手友好度 88/100