aboutsummaryrefslogtreecommitdiffstats
path: root/main/config.c
diff options
context:
space:
mode:
authortilghman <tilghman@f38db490-d61c-443f-a65b-d21fe96a405b>2007-01-14 05:34:32 +0000
committertilghman <tilghman@f38db490-d61c-443f-a65b-d21fe96a405b>2007-01-14 05:34:32 +0000
commit0bff1f49efebd9d1b62115804a63b32217a29e31 (patch)
treeb937d44a6a4f0f15e227d32e029b0793a7dd6d1f /main/config.c
parent95b9e252e6abe66c60aae90dea3c6b4cf5c19cef (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/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 */