diff options
author | tilghman <tilghman@f38db490-d61c-443f-a65b-d21fe96a405b> | 2007-01-14 05:34:32 +0000 |
---|---|---|
committer | tilghman <tilghman@f38db490-d61c-443f-a65b-d21fe96a405b> | 2007-01-14 05:34:32 +0000 |
commit | 0bff1f49efebd9d1b62115804a63b32217a29e31 (patch) | |
tree | b937d44a6a4f0f15e227d32e029b0793a7dd6d1f /main | |
parent | 95b9e252e6abe66c60aae90dea3c6b4cf5c19cef (diff) |
Bug 8803 - Fix crash in API
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@50784 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'main')
-rw-r--r-- | main/config.c | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/main/config.c b/main/config.c index 659cfe0eb..2acfde86f 100644 --- a/main/config.c +++ b/main/config.c @@ -1317,18 +1317,27 @@ struct ast_config *ast_config_load_with_comments(const char *filename) return result; } -struct ast_variable *ast_load_realtime_all(const char *family, ...) +static struct ast_variable *ast_load_realtime_helper(const char *family, va_list ap) { struct ast_config_engine *eng; char db[256]=""; char table[256]=""; struct ast_variable *res=NULL; - va_list ap; - va_start(ap, family); eng = find_engine(family, db, sizeof(db), table, sizeof(table)); if (eng && eng->realtime_func) res = eng->realtime_func(db, table, ap); + + return res; +} + +struct ast_variable *ast_load_realtime_all(const char *family, ...) +{ + struct ast_variable *res; + va_list ap; + + va_start(ap, family); + res = ast_load_realtime_helper(family, ap); va_end(ap); return res; @@ -1340,7 +1349,7 @@ struct ast_variable *ast_load_realtime(const char *family, ...) va_list ap; va_start(ap, family); - res = ast_load_realtime_all(family, ap); + res = ast_load_realtime_helper(family, ap); va_end(ap); /* Eliminate blank entries */ |