summaryrefslogtreecommitdiff
path: root/main/config.c
diff options
context:
space:
mode:
authorTilghman Lesher <tilghman@meg.abyt.es>2007-01-14 05:34:32 +0000
committerTilghman Lesher <tilghman@meg.abyt.es>2007-01-14 05:34:32 +0000
commit836956f1df6631fe24f6d2f78d68f562b11ecf4d (patch)
treeb937d44a6a4f0f15e227d32e029b0793a7dd6d1f /main/config.c
parentb2cb3f86c418afbfe0772a48c15f110c97c7cc2c (diff)
Bug 8803 - Fix crash in API
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@50784 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'main/config.c')
-rw-r--r--main/config.c17
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 */