From f4c85ebd229e87762b96a1713d9b6ac11d4b2ab1 Mon Sep 17 00:00:00 2001 From: Steve Murphy Date: Mon, 16 Jun 2008 20:43:46 +0000 Subject: (closes issue #12689) Reported by: ys Many thanks to ys for doing the research on this problem. I didn't think it would be best to unlock the contexts and then relock them after the remove_extension2() call, so I added an extra arg to remove_extension2() and set it appropriately in each call. There were not that many. I considered forcing the code to lock the contexts before the call to remove_extension2(), but that would require a slightly greater degree of changes, especially since the find_context_locked is local to pbx.c I did a simple sanity test to make sure the code doesn't mess things up in general. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@123165 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- include/asterisk/pbx.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'include') diff --git a/include/asterisk/pbx.h b/include/asterisk/pbx.h index 3e3669afb..87a594c59 100644 --- a/include/asterisk/pbx.h +++ b/include/asterisk/pbx.h @@ -600,7 +600,7 @@ int ast_context_remove_extension(const char *context, const char *extension, int const char *registrar); int ast_context_remove_extension2(struct ast_context *con, const char *extension, - int priority, const char *registrar); + int priority, const char *registrar, int already_locked); /*! * \brief Add an ignorepat -- cgit v1.2.3