diff options
author | Joshua Colp <jcolp@digium.com> | 2016-03-31 07:04:55 -0500 |
---|---|---|
committer | Gerrit Code Review <gerrit2@gerrit.digium.api> | 2016-03-31 07:04:55 -0500 |
commit | 99c749cf26d66c915ba6cf2f1f643963dcc1e757 (patch) | |
tree | b69281c1ffe923a86a02c9ef183319511c8f087a | |
parent | b2bcad9d6235b233e2da0e98989bbe3e049f0359 (diff) | |
parent | 724b9ab28fecd06b0a1c13e0b71024728336bfe8 (diff) |
Merge "res_rtp_asterisk: Fix placement of txcount increment"
-rw-r--r-- | res/res_rtp_asterisk.c | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/res/res_rtp_asterisk.c b/res/res_rtp_asterisk.c index 45bc3103a..9cc9f92a9 100644 --- a/res/res_rtp_asterisk.c +++ b/res/res_rtp_asterisk.c @@ -2252,7 +2252,6 @@ static int __rtp_sendto(struct ast_rtp_instance *instance, void *buf, size_t siz struct ast_rtp *rtp = ast_rtp_instance_get_data(instance); struct ast_srtp *srtp = ast_rtp_instance_get_srtp(instance); int res; - int hdrlen = 12; *ice = 0; @@ -2260,9 +2259,6 @@ static int __rtp_sendto(struct ast_rtp_instance *instance, void *buf, size_t siz return -1; } - rtp->txcount++; - rtp->txoctetcount += (len - hdrlen); - #ifdef HAVE_PJPROJECT if (rtp->ice) { pj_thread_register_check(); @@ -2289,7 +2285,16 @@ static int rtcp_sendto(struct ast_rtp_instance *instance, void *buf, size_t size static int rtp_sendto(struct ast_rtp_instance *instance, void *buf, size_t size, int flags, struct ast_sockaddr *sa, int *ice) { - return __rtp_sendto(instance, buf, size, flags, sa, 0, ice, 1); + struct ast_rtp *rtp = ast_rtp_instance_get_data(instance); + int hdrlen = 12; + int res; + + if ((res = __rtp_sendto(instance, buf, size, flags, sa, 0, ice, 1)) > 0) { + rtp->txcount++; + rtp->txoctetcount += (res - hdrlen); + } + + return res; } static int rtp_get_rate(struct ast_format *format) |