Fixes use of ast_format_cap_append where ast_format_cap_copy is necessary.
authorDavid Vossel <dvossel@digium.com>
Mon, 7 Feb 2011 16:33:43 +0000 (16:33 +0000)
committerDavid Vossel <dvossel@digium.com>
Mon, 7 Feb 2011 16:33:43 +0000 (16:33 +0000)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@306541 65c4cc65-6c06-0410-ace0-fbb531ad65f3

channels/chan_sip.c

index f9cd26a..a741520 100644 (file)
@@ -4887,7 +4887,7 @@ static int create_addr_from_peer(struct sip_pvt *dialog, struct sip_peer *peer)
        ast_copy_flags(&dialog->flags[0], &peer->flags[0], SIP_FLAGS_TO_COPY);
        ast_copy_flags(&dialog->flags[1], &peer->flags[1], SIP_PAGE2_FLAGS_TO_COPY);
        ast_copy_flags(&dialog->flags[2], &peer->flags[2], SIP_PAGE3_FLAGS_TO_COPY);
-       ast_format_cap_append(dialog->caps, peer->caps);
+       ast_format_cap_copy(dialog->caps, peer->caps);
        dialog->prefs = peer->prefs;
        if (ast_test_flag(&dialog->flags[1], SIP_PAGE2_T38SUPPORT)) {
                /* t38pt_udptl was enabled in the peer and not in [general] */
@@ -7273,7 +7273,7 @@ struct sip_pvt *sip_alloc(ast_string_field callid, struct ast_sockaddr *addr,
        /* Assign default music on hold class */
        ast_string_field_set(p, mohinterpret, default_mohinterpret);
        ast_string_field_set(p, mohsuggest, default_mohsuggest);
-       ast_format_cap_append(p->caps, sip_cfg.caps);
+       ast_format_cap_copy(p->caps, sip_cfg.caps);
        p->allowtransfer = sip_cfg.allowtransfer;
        if ((ast_test_flag(&p->flags[0], SIP_DTMF) == SIP_DTMF_RFC2833) ||
            (ast_test_flag(&p->flags[0], SIP_DTMF) == SIP_DTMF_AUTO))