Correct some leaks in unit tests.

* chan_sip: channel in test_sip_rtpqos_1.
* test_config: config hook, config info and global config holder.
* test_core_format: format in format_attribute_set_without_interface.
* test_stream: unneeded frame duplication.
* test_taskprocessor: task_data.

Change-Id: I94d364d195cf3b3b5de2bf3ad565343275c7ad31
14
Corey Farrell 8 years ago
parent 9d8f7bf9b5
commit 5029a11716

@ -486,6 +486,9 @@ done:
dialog_unlink_all(p); dialog_unlink_all(p);
dialog_unref(p, "Destroy test object"); dialog_unref(p, "Destroy test object");
} }
if (chan) {
ast_channel_unref(chan);
}
ast_rtp_engine_unregister(&test_engine); ast_rtp_engine_unregister(&test_engine);
return res; return res;
} }

@ -1040,6 +1040,7 @@ AST_TEST_DEFINE(config_hook)
res = AST_TEST_PASS; res = AST_TEST_PASS;
out: out:
ast_config_hook_unregister("test_hook");
delete_config_file(); delete_config_file();
return res; return res;
} }
@ -1677,6 +1678,8 @@ AST_TEST_DEFINE(config_options_test)
configs.codeccapopt = NULL; configs.codeccapopt = NULL;
ast_string_field_free_memory(&defaults); ast_string_field_free_memory(&defaults);
ast_string_field_free_memory(&configs); ast_string_field_free_memory(&configs);
aco_info_destroy(&cfg_info);
ao2_global_obj_release(global_obj);
return res; return res;
} }

@ -860,6 +860,7 @@ AST_TEST_DEFINE(format_attribute_set_without_interface)
{ {
RAII_VAR(struct ast_codec *, codec, NULL, ao2_cleanup); RAII_VAR(struct ast_codec *, codec, NULL, ao2_cleanup);
RAII_VAR(struct ast_format *, format, NULL, ao2_cleanup); RAII_VAR(struct ast_format *, format, NULL, ao2_cleanup);
struct ast_format *attr_set;
switch (cmd) { switch (cmd) {
case TEST_INIT: case TEST_INIT:
@ -885,10 +886,12 @@ AST_TEST_DEFINE(format_attribute_set_without_interface)
return AST_TEST_FAIL; return AST_TEST_FAIL;
} }
if (!ast_format_attribute_set(format, "bees", "cool")) { attr_set = ast_format_attribute_set(format, "bees", "cool");
if (!attr_set) {
ast_test_status_update(test, "Successfully set an attribute on a format without an interface\n"); ast_test_status_update(test, "Successfully set an attribute on a format without an interface\n");
return AST_TEST_FAIL; return AST_TEST_FAIL;
} }
ao2_cleanup(attr_set);
return AST_TEST_PASS; return AST_TEST_PASS;
} }

@ -677,7 +677,7 @@ AST_TEST_DEFINE(taskprocessor_push_local)
{ {
RAII_VAR(struct ast_taskprocessor *, tps, NULL, RAII_VAR(struct ast_taskprocessor *, tps, NULL,
ast_taskprocessor_unreference); ast_taskprocessor_unreference);
struct task_data *task_data; RAII_VAR(struct task_data *, task_data, NULL, ao2_cleanup);
int local_data; int local_data;
int res; int res;

Loading…
Cancel
Save