mirror of
https://github.com/asterisk/asterisk.git
synced 2025-09-05 04:11:08 +00:00
Cleaning up a few things in detect disconnect patch
Initialized ast_call_feature in detect_disconnect to avoid accessing uninitialized memory. Cleaned up /param tags in features.h. No longer send dynamic features in ast_feature_detect. issue #11583 git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@183386 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -792,7 +792,7 @@ static struct ast_channel *wait_for_answer(struct ast_channel *in, struct dial_l
|
||||
static int detect_disconnect(struct ast_channel *chan, char code, char *featurecode, int len)
|
||||
{
|
||||
struct ast_flags features = { AST_FEATURE_DISCONNECT }; /* only concerned with disconnect feature */
|
||||
struct ast_call_feature feature;
|
||||
struct ast_call_feature feature = { 0, };
|
||||
char *tmp;
|
||||
int res;
|
||||
|
||||
|
@@ -101,7 +101,11 @@ char *ast_pickup_ext(void);
|
||||
int ast_bridge_call(struct ast_channel *chan, struct ast_channel *peer,struct ast_bridge_config *config);
|
||||
|
||||
/*! \brief detect a feature before bridging
|
||||
\param chan, ast_flags ptr, code, ast_call_feature ptr to be set if found */
|
||||
\param chan
|
||||
\param ast_flags ptr
|
||||
\param char ptr of input code
|
||||
\retval ast_call_feature ptr to be set if found
|
||||
\return result, was feature found or not */
|
||||
int ast_feature_detect(struct ast_channel *chan, struct ast_flags *features, char *code, struct ast_call_feature *feature);
|
||||
|
||||
/*! \brief Pickup a call */
|
||||
|
@@ -1344,12 +1344,7 @@ static int feature_interpret(struct ast_channel *chan, struct ast_channel *peer,
|
||||
|
||||
int ast_feature_detect(struct ast_channel *chan, struct ast_flags *features, char *code, struct ast_call_feature *feature) {
|
||||
|
||||
char *dynamic_features;
|
||||
ast_channel_lock(chan);
|
||||
dynamic_features = ast_strdupa(S_OR(pbx_builtin_getvar_helper(chan, "DYNAMIC_FEATURES"),""));
|
||||
ast_channel_unlock(chan);
|
||||
|
||||
return feature_interpret_helper(chan, NULL, NULL, code, 0, dynamic_features, features, 0, feature);
|
||||
return feature_interpret_helper(chan, NULL, NULL, code, 0, NULL, features, 0, feature);
|
||||
}
|
||||
|
||||
static void set_config_flags(struct ast_channel *chan, struct ast_channel *peer, struct ast_bridge_config *config)
|
||||
|
Reference in New Issue
Block a user