diff options
Diffstat (limited to 'main')
-rw-r--r-- | main/pbx.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/main/pbx.c b/main/pbx.c index 857b7e218..e3498c5ad 100644 --- a/main/pbx.c +++ b/main/pbx.c @@ -5719,6 +5719,8 @@ int ast_explicit_goto(struct ast_channel *chan, const char *context, const char if (!chan) return -1; + ast_channel_lock(chan); + if (!ast_strlen_zero(context)) ast_copy_string(chan->context, context, sizeof(chan->context)); if (!ast_strlen_zero(exten)) @@ -5730,6 +5732,8 @@ int ast_explicit_goto(struct ast_channel *chan, const char *context, const char chan->priority--; } + ast_channel_unlock(chan); + return 0; } |