Fix memory leaks
This commit is contained in:
parent
9bc7d51074
commit
12331d66f5
7 changed files with 24 additions and 14 deletions
|
|
@ -89,6 +89,8 @@ static vector<string> list_directory(string dir_name) {
|
|||
if (name != "." && name != "..")
|
||||
result.push_back(dir_name + "/" + name);
|
||||
}
|
||||
|
||||
closedir(dir);
|
||||
return result;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -21,11 +21,6 @@ static int spy_seek(void *data, size_t position) {
|
|||
return 0;
|
||||
}
|
||||
|
||||
static void spy_release(void *data) {
|
||||
SpyReader *reader = static_cast<SpyReader *>(data);
|
||||
delete reader;
|
||||
}
|
||||
|
||||
SpyReader::SpyReader(string content, size_t chunk_size) :
|
||||
content(content),
|
||||
position(0),
|
||||
|
|
@ -34,5 +29,5 @@ SpyReader::SpyReader(string content, size_t chunk_size) :
|
|||
this,
|
||||
spy_read,
|
||||
spy_seek,
|
||||
spy_release,
|
||||
nullptr,
|
||||
}) {}
|
||||
|
|
|
|||
|
|
@ -19,12 +19,12 @@ describe("Languages", [&]() {
|
|||
ts_document_free(doc);
|
||||
});
|
||||
|
||||
auto run_tests_for_language = [&](string language, ts_parser parser) {
|
||||
auto run_tests_for_language = [&](string language, ts_parser (parser_constructor)()) {
|
||||
describe(language.c_str(), [&]() {
|
||||
before_each([&]() {
|
||||
ts_document_set_parser(doc, parser);
|
||||
ts_document_set_parser(doc, parser_constructor());
|
||||
});
|
||||
|
||||
|
||||
for (auto &entry : test_entries_for_language(language)) {
|
||||
it(entry.description.c_str(), [&]() {
|
||||
ts_document_set_input_string(doc, entry.input.c_str());
|
||||
|
|
@ -34,10 +34,10 @@ describe("Languages", [&]() {
|
|||
});
|
||||
};
|
||||
|
||||
run_tests_for_language("json", ts_parser_json());
|
||||
run_tests_for_language("arithmetic", ts_parser_arithmetic());
|
||||
run_tests_for_language("javascript", ts_parser_javascript());
|
||||
run_tests_for_language("golang", ts_parser_golang());
|
||||
run_tests_for_language("json", ts_parser_json);
|
||||
run_tests_for_language("arithmetic", ts_parser_arithmetic);
|
||||
run_tests_for_language("javascript", ts_parser_javascript);
|
||||
run_tests_for_language("golang", ts_parser_golang);
|
||||
});
|
||||
|
||||
END_TEST
|
||||
Loading…
Add table
Add a link
Reference in a new issue