summaryrefslogtreecommitdiff
path: root/codecs/codec_zap.c
diff options
context:
space:
mode:
authorJason Parker <jparker@digium.com>2007-10-31 19:24:29 +0000
committerJason Parker <jparker@digium.com>2007-10-31 19:24:29 +0000
commit59c9ff7ef2c001e68d1a75af3e9f6b4c24a6196e (patch)
treedaa3437ec6e548a5cc02c05654c1b9993bfd0eef /codecs/codec_zap.c
parent25c6d388f5e658e5fa52966a82a37d78a2441886 (diff)
More changes to change return values from load_module functions.
(issue #11096) Patches: codec_adpcm.c.patch uploaded by moy (license 222) codec_alaw.c.patch uploaded by moy (license 222) codec_a_mu.c.patch uploaded by moy (license 222) codec_g722.c.patch uploaded by moy (license 222) codec_g726.c.diff uploaded by moy (license 222) codec_gsm.c.patch uploaded by moy (license 222) codec_ilbc.c.patch uploaded by moy (license 222) codec_lpc10.c.patch uploaded by moy (license 222) codec_speex.c.patch uploaded by moy (license 222) codec_ulaw.c.patch uploaded by moy (license 222) codec_zap.c.patch uploaded by moy (license 222) format_g723.c.patch uploaded by moy (license 222) format_g726.c.patch uploaded by moy (license 222) format_g729.c.patch uploaded by moy (license 222) format_gsm.c.patch uploaded by moy (license 222) format_h263.c.patch uploaded by moy (license 222) format_h264.c.patch uploaded by moy (license 222) format_ilbc.c.patch uploaded by moy (license 222) format_jpeg.c.patch uploaded by moy (license 222) format_ogg_vorbis.c.patch uploaded by moy (license 222) format_pcm.c.patch uploaded by moy (license 222) format_sln.c.patch uploaded by moy (license 222) format_vox.c.patch uploaded by moy (license 222) format_wav.c.patch uploaded by moy (license 222) format_wav_gsm.c.patch uploaded by moy (license 222) res_adsi.c.patch uploaded by eliel (license 64) res_ael_share.c.patch uploaded by eliel (license 64) res_clioriginate.c.patch uploaded by eliel (license 64) res_convert.c.patch uploaded by eliel (license 64) res_indications.c.patch uploaded by eliel (license 64) res_musiconhold.c.patch uploaded by eliel (license 64) res_smdi.c.patch uploaded by eliel (license 64) res_speech.c.patch uploaded by eliel (license 64) git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@87889 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'codecs/codec_zap.c')
-rw-r--r--codecs/codec_zap.c21
1 files changed, 12 insertions, 9 deletions
diff --git a/codecs/codec_zap.c b/codecs/codec_zap.c
index df400a9f9..5802ff2a1 100644
--- a/codecs/codec_zap.c
+++ b/codecs/codec_zap.c
@@ -380,14 +380,16 @@ static void unregister_translators(void)
AST_LIST_UNLOCK(&translators);
}
-static void parse_config(int reload)
+static int parse_config(int reload)
{
struct ast_variable *var;
struct ast_flags config_flags = { reload ? CONFIG_FLAG_FILEUNCHANGED : 0 };
struct ast_config *cfg = ast_config_load("codecs.conf", config_flags);
- if (!cfg || cfg == CONFIG_STATUS_FILEUNCHANGED)
- return;
+ if (!cfg)
+ return -1;
+ if (cfg == CONFIG_STATUS_FILEUNCHANGED)
+ return 0;
for (var = ast_variable_browse(cfg, "plc"); var; var = var->next) {
if (!strcasecmp(var->name, "genericplc")) {
@@ -396,8 +398,8 @@ static void parse_config(int reload)
global_useplc ? "" : "not ");
}
}
-
ast_config_destroy(cfg);
+ return 0;
}
static void build_translators(struct format_map *map, unsigned int dstfmts, unsigned int srcfmts)
@@ -456,14 +458,15 @@ static int reload(void)
{
struct translator *cur;
- parse_config(1);
+ if (parse_config(1))
+ return AST_MODULE_LOAD_DECLINE;
AST_LIST_LOCK(&translators);
AST_LIST_TRAVERSE(&translators, cur, entry)
cur->t.useplc = global_useplc;
AST_LIST_UNLOCK(&translators);
- return 0;
+ return AST_MODULE_LOAD_SUCCESS;
}
static int unload_module(void)
@@ -476,11 +479,11 @@ static int unload_module(void)
static int load_module(void)
{
- parse_config(0);
+ if (parse_config(0))
+ return AST_MODULE_LOAD_DECLINE;
find_transcoders();
ast_cli_register_multiple(cli, sizeof(cli) / sizeof(cli[0]));
-
- return 0;
+ return AST_MODULE_LOAD_SUCCESS;
}
AST_MODULE_INFO(ASTERISK_GPL_KEY, AST_MODFLAG_DEFAULT, "Generic Zaptel Transcoder Codec Translator",