mapbox/node-cpp-skel

try/catch in HandleOKCallback

オープン

#114 opened on 2018/04/04

 (0 件のコメント) (0 件のリアクション) (0 人の担当者)C++ (9 件のフォーク)auto 404
good first issue

Repository metrics

Stars
 (74 個のスター)
PR merge metrics
 (PR metrics pending)

説明

We should add try/catch around code in the HandleOKCallback like https://github.com/mapbox/node-cpp-skel/blob/c3d13e76cfb1178c92bf8beca822da4aba8c28f7/src/object_async/hello_async.cpp#L179-L186. Otherwise down stream developers are likely to:

  • add new code to the HandleOKCallback
  • in many instances that code might throw
  • a throw will not be caught automatically and will instead crash the process with an abort

An example is https://github.com/mapbox/vtquery/issues/69 /cc @mapsam

We must protect against crashes like this, so I think its worth adding try/catch around the code in node-cpp-skel. Then users would be forced (due to the lack of coverage of the catch to think hard about whether an exception is possible.

コントリビューターガイド