diff --git a/main/features.c b/main/features.c index 6ad1c12a9b6089ed061c7912eac5bca7f293fc75..a7be7a648b18587d597723c072200e1639c82eeb 100644 --- a/main/features.c +++ b/main/features.c @@ -2326,6 +2326,10 @@ static void add_features_datastores(struct ast_channel *caller, struct ast_chann ast_channel_lock(caller); ast_channel_datastore_add(caller, ds_caller_features); ast_channel_unlock(caller); + } else { + /* If we don't return here, then when we do a builtin_atxfer we will copy the disconnect + * flags over from the atxfer to the caller */ + return; } ast_channel_lock(callee);