The local struct ast_party_connected_line connected_caller variable
was uninitialized when the copy function was called.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@192590
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
#endif
struct ast_party_connected_line connected_caller;
struct ast_str *featurecode = ast_str_alloca(FEATURE_MAX_LEN + 1);
+
+ ast_party_connected_line_init(&connected_caller);
if (single) {
/* Turn off hold music, etc */
if (!ast_test_flag64(outgoing, OPT_MUSICBACK | OPT_RINGBACK))
ast_debug(1, "Call pickup on '%s' by '%s'\n", target->name, chan->name);
connected_caller = target->connected;
+ ast_party_connected_line_init(&target->connected);
connected_caller.source = AST_CONNECTED_LINE_UPDATE_SOURCE_ANSWER;
ast_channel_update_connected_line(chan, &connected_caller);
ast_channel_unlock(chan);
connected_caller.source = AST_CONNECTED_LINE_UPDATE_SOURCE_ANSWER;
ast_channel_queue_connected_line_update(chan, &connected_caller);
- ast_party_connected_line_init(&target->connected);
ast_party_connected_line_free(&connected_caller);
if ((res = ast_answer(chan))) {
struct ast_party_connected_line connected_caller;
char *inchan_name;
+ ast_party_connected_line_init(&connected_caller);
+
ast_channel_lock(qe->chan);
inchan_name = ast_strdupa(qe->chan->name);
ast_channel_unlock(qe->chan);
ast_channel_unlock(targetcall_pvt->owner);
}
+ ast_party_connected_line_init(&connected_caller);
if (target.chan2) {
if (current->chan2) {
/* Tell each of the other channels to whom they are now connected */
struct ast_bridge_config bconfig;
struct ast_frame *f;
int l;
- struct ast_party_connected_line connected_line = {{0,},};
+ struct ast_party_connected_line connected_line;
struct ast_datastore *features_datastore;
struct ast_dial_features *dialfeatures = NULL;
newchan = feature_request_and_dial(transferer, transferee, "Local", ast_best_codec(transferer->nativeformats),
xferto, atxfernoanswertimeout, &outstate, transferer->cid.cid_num, transferer->cid.cid_name, 1, transferer->language);
+ ast_party_connected_line_init(&connected_line);
if (!ast_check_hangup(transferer)) {
/* Transferer is up - old behaviour */
ast_indicate(transferer, -1);