|
|
@ -1061,7 +1061,10 @@ static struct ast_channel *wait_for_answer(struct ast_channel *in,
|
|
|
|
ast_connected_line_copy_from_caller(&connected_caller, ast_channel_caller(outgoing->chan));
|
|
|
|
ast_connected_line_copy_from_caller(&connected_caller, ast_channel_caller(outgoing->chan));
|
|
|
|
ast_channel_unlock(outgoing->chan);
|
|
|
|
ast_channel_unlock(outgoing->chan);
|
|
|
|
connected_caller.source = AST_CONNECTED_LINE_UPDATE_SOURCE_ANSWER;
|
|
|
|
connected_caller.source = AST_CONNECTED_LINE_UPDATE_SOURCE_ANSWER;
|
|
|
|
ast_channel_update_connected_line(in, &connected_caller, NULL);
|
|
|
|
if (ast_channel_connected_line_sub(outgoing->chan, in, &connected_caller, 0) &&
|
|
|
|
|
|
|
|
ast_channel_connected_line_macro(outgoing->chan, in, &connected_caller, 1, 0)) {
|
|
|
|
|
|
|
|
ast_channel_update_connected_line(in, &connected_caller, NULL);
|
|
|
|
|
|
|
|
}
|
|
|
|
ast_party_connected_line_free(&connected_caller);
|
|
|
|
ast_party_connected_line_free(&connected_caller);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
@ -1126,7 +1129,10 @@ static struct ast_channel *wait_for_answer(struct ast_channel *in,
|
|
|
|
ast_connected_line_copy_from_caller(&connected_caller, ast_channel_caller(c));
|
|
|
|
ast_connected_line_copy_from_caller(&connected_caller, ast_channel_caller(c));
|
|
|
|
ast_channel_unlock(c);
|
|
|
|
ast_channel_unlock(c);
|
|
|
|
connected_caller.source = AST_CONNECTED_LINE_UPDATE_SOURCE_ANSWER;
|
|
|
|
connected_caller.source = AST_CONNECTED_LINE_UPDATE_SOURCE_ANSWER;
|
|
|
|
ast_channel_update_connected_line(in, &connected_caller, NULL);
|
|
|
|
if (ast_channel_connected_line_sub(c, in, &connected_caller, 0) &&
|
|
|
|
|
|
|
|
ast_channel_connected_line_macro(c, in, &connected_caller, 1, 0)) {
|
|
|
|
|
|
|
|
ast_channel_update_connected_line(in, &connected_caller, NULL);
|
|
|
|
|
|
|
|
}
|
|
|
|
ast_party_connected_line_free(&connected_caller);
|
|
|
|
ast_party_connected_line_free(&connected_caller);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
@ -1199,7 +1205,10 @@ static struct ast_channel *wait_for_answer(struct ast_channel *in,
|
|
|
|
ast_connected_line_copy_from_caller(&connected_caller, ast_channel_caller(c));
|
|
|
|
ast_connected_line_copy_from_caller(&connected_caller, ast_channel_caller(c));
|
|
|
|
ast_channel_unlock(c);
|
|
|
|
ast_channel_unlock(c);
|
|
|
|
connected_caller.source = AST_CONNECTED_LINE_UPDATE_SOURCE_ANSWER;
|
|
|
|
connected_caller.source = AST_CONNECTED_LINE_UPDATE_SOURCE_ANSWER;
|
|
|
|
ast_channel_update_connected_line(in, &connected_caller, NULL);
|
|
|
|
if (ast_channel_connected_line_sub(c, in, &connected_caller, 0) &&
|
|
|
|
|
|
|
|
ast_channel_connected_line_macro(c, in, &connected_caller, 1, 0)) {
|
|
|
|
|
|
|
|
ast_channel_update_connected_line(in, &connected_caller, NULL);
|
|
|
|
|
|
|
|
}
|
|
|
|
ast_party_connected_line_free(&connected_caller);
|
|
|
|
ast_party_connected_line_free(&connected_caller);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|