summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoshua Colp <jcolp@digium.com>2017-04-13 07:06:51 -0500
committerGerrit Code Review <gerrit2@gerrit.digium.api>2017-04-13 07:06:51 -0500
commit49535c17fc6feefb1533e5460d9bde5815178647 (patch)
treecb5cc5c67939909a5780ec6b161609e278fb409c
parente803eafb653b6eb4206d57575cdad2a25a32b4fe (diff)
parent6db0939b96017b468d2d368e67669fd02b2fdecc (diff)
Merge "modules: change module LOAD_FAILUREs to LOAD_DECLINES (14)"
-rw-r--r--formats/format_ogg_speex.c21
-rw-r--r--res/res_ari_events.c5
-rw-r--r--res/res_http_media_cache.c4
-rw-r--r--rest-api-templates/res_ari_resource.c.mustache5
-rw-r--r--tests/test_media_cache.c2
5 files changed, 22 insertions, 15 deletions
diff --git a/formats/format_ogg_speex.c b/formats/format_ogg_speex.c
index 747adb37f..331c54435 100644
--- a/formats/format_ogg_speex.c
+++ b/formats/format_ogg_speex.c
@@ -312,6 +312,15 @@ static struct ast_format_def speex32_f = {
.desc_size = sizeof(struct speex_desc),
};
+static int unload_module(void)
+{
+ int res = 0;
+ res |= ast_format_def_unregister(speex_f.name);
+ res |= ast_format_def_unregister(speex16_f.name);
+ res |= ast_format_def_unregister(speex32_f.name);
+ return res;
+}
+
static int load_module(void)
{
speex_f.format = ast_format_speex;
@@ -321,21 +330,13 @@ static int load_module(void)
if (ast_format_def_register(&speex_f) ||
ast_format_def_register(&speex16_f) ||
ast_format_def_register(&speex32_f)) {
- return AST_MODULE_LOAD_FAILURE;
+ unload_module();
+ return AST_MODULE_LOAD_DECLINE;
}
return AST_MODULE_LOAD_SUCCESS;
}
-static int unload_module(void)
-{
- int res = 0;
- res |= ast_format_def_unregister(speex_f.name);
- res |= ast_format_def_unregister(speex16_f.name);
- res |= ast_format_def_unregister(speex32_f.name);
- return res;
-}
-
AST_MODULE_INFO(ASTERISK_GPL_KEY, AST_MODFLAG_LOAD_ORDER, "OGG/Speex audio",
.load = load_module,
.unload = unload_module,
diff --git a/res/res_ari_events.c b/res/res_ari_events.c
index 8d8a303d1..76b791719 100644
--- a/res/res_ari_events.c
+++ b/res/res_ari_events.c
@@ -422,6 +422,7 @@ static int unload_module(void)
ast_ari_remove_handler(&events);
ao2_cleanup(events.ws_server);
events.ws_server = NULL;
+ ast_ari_websocket_events_event_websocket_dtor();
stasis_app_unref();
return 0;
}
@@ -432,11 +433,12 @@ static int load_module(void)
struct ast_websocket_protocol *protocol;
if (ast_ari_websocket_events_event_websocket_init() == -1) {
- return AST_MODULE_LOAD_FAILURE;
+ return AST_MODULE_LOAD_DECLINE;
}
events.ws_server = ast_websocket_server_create();
if (!events.ws_server) {
+ ast_ari_websocket_events_event_websocket_dtor();
return AST_MODULE_LOAD_DECLINE;
}
@@ -444,6 +446,7 @@ static int load_module(void)
if (!protocol) {
ao2_ref(events.ws_server, -1);
events.ws_server = NULL;
+ ast_ari_websocket_events_event_websocket_dtor();
return AST_MODULE_LOAD_DECLINE;
}
protocol->session_attempted = ast_ari_events_event_websocket_ws_attempted_cb;
diff --git a/res/res_http_media_cache.c b/res/res_http_media_cache.c
index 8c6728586..175f24c92 100644
--- a/res/res_http_media_cache.c
+++ b/res/res_http_media_cache.c
@@ -425,13 +425,13 @@ static int load_module(void)
if (ast_bucket_scheme_register("http", &http_bucket_wizard, &http_bucket_file_wizard,
NULL, NULL)) {
ast_log(LOG_ERROR, "Failed to register Bucket HTTP wizard scheme implementation\n");
- return AST_MODULE_LOAD_FAILURE;
+ return AST_MODULE_LOAD_DECLINE;
}
if (ast_bucket_scheme_register("https", &https_bucket_wizard, &https_bucket_file_wizard,
NULL, NULL)) {
ast_log(LOG_ERROR, "Failed to register Bucket HTTPS wizard scheme implementation\n");
- return AST_MODULE_LOAD_FAILURE;
+ return AST_MODULE_LOAD_DECLINE;
}
return AST_MODULE_LOAD_SUCCESS;
diff --git a/rest-api-templates/res_ari_resource.c.mustache b/rest-api-templates/res_ari_resource.c.mustache
index ca4e2f192..3ccafcd08 100644
--- a/rest-api-templates/res_ari_resource.c.mustache
+++ b/rest-api-templates/res_ari_resource.c.mustache
@@ -263,6 +263,7 @@ static int unload_module(void)
{{#has_websocket}}
ao2_cleanup({{full_name}}.ws_server);
{{full_name}}.ws_server = NULL;
+ ast_ari_websocket_events_event_websocket_dtor();
{{/has_websocket}}
{{/apis}}
stasis_app_unref();
@@ -278,11 +279,12 @@ static int load_module(void)
struct ast_websocket_protocol *protocol;
if (ast_ari_websocket_{{c_name}}_{{c_nickname}}_init() == -1) {
- return AST_MODULE_LOAD_FAILURE;
+ return AST_MODULE_LOAD_DECLINE;
}
{{full_name}}.ws_server = ast_websocket_server_create();
if (!{{full_name}}.ws_server) {
+ ast_ari_websocket_events_event_websocket_dtor();
return AST_MODULE_LOAD_DECLINE;
}
@@ -290,6 +292,7 @@ static int load_module(void)
if (!protocol) {
ao2_ref({{full_name}}.ws_server, -1);
{{full_name}}.ws_server = NULL;
+ ast_ari_websocket_events_event_websocket_dtor();
return AST_MODULE_LOAD_DECLINE;
}
protocol->session_attempted = ast_ari_{{c_name}}_{{c_nickname}}_ws_attempted_cb;
diff --git a/tests/test_media_cache.c b/tests/test_media_cache.c
index 34f53190a..c35e43f0d 100644
--- a/tests/test_media_cache.c
+++ b/tests/test_media_cache.c
@@ -397,7 +397,7 @@ static int load_module(void)
if (ast_bucket_scheme_register("httptest", &bucket_test_wizard,
&bucket_file_test_wizard, NULL, NULL)) {
ast_log(LOG_ERROR, "Failed to register Bucket HTTP test wizard scheme implementation\n");
- return AST_MODULE_LOAD_FAILURE;
+ return AST_MODULE_LOAD_DECLINE;
}
AST_TEST_REGISTER(exists_nominal);