diff options
author | Martin Pycko <martinp@digium.com> | 2003-07-14 17:16:47 +0000 |
---|---|---|
committer | Martin Pycko <martinp@digium.com> | 2003-07-14 17:16:47 +0000 |
commit | f4341a13d0ec2ff8c0e0e83fff59fbbd1b487f95 (patch) | |
tree | cccae360b948938caafdcf4131773e100ef93c63 | |
parent | c6a3f83e831403c794f3dfcab770a1e8b20f6df9 (diff) |
Add the possibility to delete all the contexts registered by a certain registrar with ast_merge_and_delete routine; make it the default behaviour when reloding extensions
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@1187 65c4cc65-6c06-0410-ace0-fbb531ad65f3
-rwxr-xr-x | include/asterisk/pbx.h | 3 | ||||
-rwxr-xr-x | pbx/pbx_config.c | 2 |
2 files changed, 3 insertions, 2 deletions
diff --git a/include/asterisk/pbx.h b/include/asterisk/pbx.h index e1d7f96e2..ae45e5e73 100755 --- a/include/asterisk/pbx.h +++ b/include/asterisk/pbx.h @@ -131,8 +131,9 @@ struct ast_context *ast_context_create(struct ast_context **extcontexts, char *n //! Merge the temporary contexts into a global contexts list and delete from the global list the ones that are being added /*! * \param extcontexts pointer to the ast_context structure pointer + * \param registar of the context; if it's set the routine will delete all contexts that belong to that registrar; if NULL only the contexts that are specified in extcontexts */ -void ast_merge_contexts_and_delete(struct ast_context **extcontexts); +void ast_merge_contexts_and_delete(struct ast_context **extcontexts, char *registrar); //! Destroy a context (matches the specified context (or ANY context if NULL) /*! diff --git a/pbx/pbx_config.c b/pbx/pbx_config.c index 0b15e5694..844386354 100755 --- a/pbx/pbx_config.c +++ b/pbx/pbx_config.c @@ -1641,7 +1641,7 @@ static int pbx_load_module(void) } ast_destroy(cfg); } - ast_merge_contexts_and_delete(&local_contexts); + ast_merge_contexts_and_delete(&local_contexts,registrar); return 0; } |