]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
fixes iax "can't compress subclass 4294967295" error
authorDavid Vossel <dvossel@digium.com>
Tue, 22 Dec 2009 21:53:46 +0000 (21:53 +0000)
committerDavid Vossel <dvossel@digium.com>
Tue, 22 Dec 2009 21:53:46 +0000 (21:53 +0000)
(closes issue #16456)
Reported by: dvossel
Tested by: dvossel

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@236144 65c4cc65-6c06-0410-ace0-fbb531ad65f3

channels/chan_iax2.c

index 9c344cd333ae008eccee75d1796556779bf5437b..ce32bbf0fc405a5df40e8028e691457b2fd3bf4a 100644 (file)
@@ -6248,10 +6248,15 @@ static int iax2_send(struct chan_iax2_pvt *pvt, struct ast_frame *f, unsigned in
                if (!transfer)
                        pvt->aseqno = fr->iseqno;
                fh->type = fr->af.frametype & 0xFF;
-               if (fr->af.frametype == AST_FRAME_VIDEO)
+
+               if (fr->af.frametype == AST_FRAME_VIDEO) {
                        fh->csub = compress_subclass(fr->af.subclass.codec & ~0x1LL) | ((fr->af.subclass.codec & 0x1LL) << 6);
-               else
+               } else if (fr->af.frametype == AST_FRAME_VOICE) {
                        fh->csub = compress_subclass(fr->af.subclass.codec);
+               } else {
+                       fh->csub = compress_subclass(fr->af.subclass.integer);
+               }
+
                if (transfer) {
                        fr->dcallno = pvt->transfercallno;
                } else