summaryrefslogtreecommitdiff
path: root/package/asterisk/patches/patch-channels_chan_oss_c
diff options
context:
space:
mode:
Diffstat (limited to 'package/asterisk/patches/patch-channels_chan_oss_c')
-rw-r--r--package/asterisk/patches/patch-channels_chan_oss_c37
1 files changed, 37 insertions, 0 deletions
diff --git a/package/asterisk/patches/patch-channels_chan_oss_c b/package/asterisk/patches/patch-channels_chan_oss_c
new file mode 100644
index 000000000..33e9aaad7
--- /dev/null
+++ b/package/asterisk/patches/patch-channels_chan_oss_c
@@ -0,0 +1,37 @@
+--- asterisk-1.4.27.1.orig/channels/chan_oss.c 2009-08-10 21:15:57.000000000 +0200
++++ asterisk-1.4.27.1/channels/chan_oss.c 2009-12-03 20:58:13.000000000 +0100
+@@ -562,7 +562,7 @@ static void send_sound(struct chan_oss_p
+ l = FRAME_SIZE - ofs;
+ if (l > s->datalen - start) /* don't overflow the source */
+ l = s->datalen - start;
+- bcopy(s->data + start, myframe + ofs, l * 2);
++ memcpy(myframe + ofs, s->data + start, l * 2);
+ if (0)
+ ast_log(LOG_WARNING, "send_sound sound %d/%d of %d into %d\n", l_sampsent, l, s->samplen, ofs);
+ l_sampsent += l;
+@@ -573,14 +573,14 @@ static void send_sound(struct chan_oss_p
+ if (l > 0) {
+ if (l > FRAME_SIZE - ofs)
+ l = FRAME_SIZE - ofs;
+- bcopy(silence, myframe + ofs, l * 2);
++ memcpy(myframe + ofs, silence, l * 2);
+ l_sampsent += l;
+ } else { /* silence is over, restart sound if loop */
+ if (s->repeat == 0) { /* last block */
+ o->cursound = -1;
+ o->nosound = 0; /* allow audio data */
+ if (ofs < FRAME_SIZE) /* pad with silence */
+- bcopy(silence, myframe + ofs, (FRAME_SIZE - ofs) * 2);
++ memcpy(myframe + ofs, silence, (FRAME_SIZE - ofs) * 2);
+ }
+ l_sampsent = 0;
+ }
+@@ -905,7 +905,7 @@ static struct ast_frame *oss_read(struct
+
+ /* XXX can be simplified returning &ast_null_frame */
+ /* prepare a NULL frame in case we don't have enough data to return */
+- bzero(f, sizeof(struct ast_frame));
++ memset(f, 0, sizeof(struct ast_frame));
+ f->frametype = AST_FRAME_NULL;
+ f->src = oss_tech.type;
+