path: root/channels/iax2-parser.c
diff options
authormvanbaak <mvanbaak@f38db490-d61c-443f-a65b-d21fe96a405b>2008-05-22 16:29:54 +0000
committermvanbaak <mvanbaak@f38db490-d61c-443f-a65b-d21fe96a405b>2008-05-22 16:29:54 +0000
commitc1210321e7aeb274076b14fc2f622edf442246fa (patch)
treebcbbf4eda53cdb8257bbc7add4616e01e31b1ae2 /channels/iax2-parser.c
parent2d9ba021dd38039616c82a4e317f652abe246ba3 (diff)
- revert change to ast_queue_hangup and create ast_queue_hangup_with_cause
- make data member of the ast_frame struct a named union instead of a void Recently the ast_queue_hangup function got a new parameter, the hangupcause Feedback came in that this is no good and that instead a new function should be created. This I did. The hangupcause was stored in the seqno member of the ast_frame struct. This is not very elegant, and since there's already a data member that one should be used. Problem is, this member was a void *. Now it's a named union so it can hold a pointer, an uint32 and there's a padding in case someone wants to store another type in there in the future. This commit is so massive, because all ast_frame.data uses have to be altered to ast_frame.data.data Thanks russellb and kpfleming for the feedback. (closes issue #12674) Reported by: mvanbaak git-svn-id: http://svn.digium.com/svn/asterisk/trunk@117802 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels/iax2-parser.c')
1 files changed, 3 insertions, 3 deletions
diff --git a/channels/iax2-parser.c b/channels/iax2-parser.c
index a86bf7428..bb6e3b2e1 100644
--- a/channels/iax2-parser.c
+++ b/channels/iax2-parser.c
@@ -966,7 +966,7 @@ void iax_frame_wrap(struct iax_frame *fr, struct ast_frame *f)
fr->af.src = f->src;
fr->af.delivery.tv_sec = 0;
fr->af.delivery.tv_usec = 0;
- fr->af.data = fr->afdata;
+ fr->af.data.ptr = fr->afdata;
fr->af.len = f->len;
if (fr->af.datalen) {
size_t copy_len = fr->af.datalen;
@@ -979,10 +979,10 @@ void iax_frame_wrap(struct iax_frame *fr, struct ast_frame *f)
/* We need to byte-swap slinear samples from network byte order */
if ((fr->af.frametype == AST_FRAME_VOICE) && (fr->af.subclass == AST_FORMAT_SLINEAR)) {
/* 2 bytes / sample for SLINEAR */
- ast_swapcopy_samples(fr->af.data, f->data, copy_len / 2);
+ ast_swapcopy_samples(fr->af.data.ptr, f->data.ptr, copy_len / 2);
} else
- memcpy(fr->af.data, f->data, copy_len);
+ memcpy(fr->af.data.ptr, f->data.ptr, copy_len);