C++ コードで Jansson ライブラリを使用しています。Jansson変数が作成されたライブラリでは、変数を解放して参照を解放する必要があり、「json_decref(json_t *json)」メソッドを使用して解放しています。しかし、ダブルフリーの問題が発生することがあり、実行時に問題が発生しませんでした。正常ではないかもしれませんが、いくつかの参照を解放しようとしたときに実行時エラーが発生したいと考えています。たとえば、次のテスト コードを実行しています。
json_t *root = json_loads(any_json_message, 0, &error);
json_decref(root);
json_decref(root);
ご覧のとおり、問題があり、double free のような実行時エラーは発生しません。
また、CMake を使用してソース コードをコンパイルしています。たぶん、cmakeフラグで私の質問が修正されます。
何か案が ?