]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
Only keep the video RTP structure around if 1. Video support is enabled and 2. A...
authorJoshua Colp <jcolp@digium.com>
Tue, 14 Nov 2006 22:05:03 +0000 (22:05 +0000)
committerJoshua Colp <jcolp@digium.com>
Tue, 14 Nov 2006 22:05:03 +0000 (22:05 +0000)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@47628 65c4cc65-6c06-0410-ace0-fbb531ad65f3

channels/chan_sip.c

index b46c9c04ffe742c984e2ea999655aac5df667d06..a8b8353fab7f3fa93399be7d3f7daa54131547e6 100644 (file)
@@ -2561,7 +2561,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);
        dialog->capability = peer->capability;
-       if (!ast_test_flag(&dialog->flags[1], SIP_PAGE2_VIDEOSUPPORT) && dialog->vrtp) {
+       if ((!ast_test_flag(&dialog->flags[1], SIP_PAGE2_VIDEOSUPPORT) || !(dialog->capability & AST_FORMAT_VIDEO_MASK)) && dialog->vrtp) {
                ast_rtp_destroy(dialog->vrtp);
                dialog->vrtp = NULL;
        }
@@ -8945,7 +8945,7 @@ static enum check_auth_result check_user_full(struct sip_pvt *p, struct sip_requ
                                p->t38.jointcapability &= p->t38.peercapability;
                        p->maxcallbitrate = user->maxcallbitrate;
                        /* If we do not support video, remove video from call structure */
-                       if (!ast_test_flag(&p->flags[1], SIP_PAGE2_VIDEOSUPPORT) && p->vrtp) {
+                       if ((!ast_test_flag(&p->flags[1], SIP_PAGE2_VIDEOSUPPORT) || !(p->capability & AST_FORMAT_VIDEO_MASK)) && p->vrtp) {
                                ast_rtp_destroy(p->vrtp);
                                p->vrtp = NULL;
                        }
@@ -9065,7 +9065,7 @@ static enum check_auth_result check_user_full(struct sip_pvt *p, struct sip_requ
                                if (p->peercapability)
                                        p->jointcapability &= p->peercapability;
                                p->maxcallbitrate = peer->maxcallbitrate;
-                               if (!ast_test_flag(&p->flags[1], SIP_PAGE2_VIDEOSUPPORT) && p->vrtp) {
+                               if ((!ast_test_flag(&p->flags[1], SIP_PAGE2_VIDEOSUPPORT) || !(p->capability & AST_FORMAT_VIDEO_MASK)) && p->vrtp) {
                                        ast_rtp_destroy(p->vrtp);
                                        p->vrtp = NULL;
                                }