Hi,

haven't used net/coccinella for a while as iax client, and now found it 
aborting under some circumstances while doing a call.

a simple memcpy -> memmove seems to have made the problem disappear for me.

OK?

Index: Makefile
===================================================================
RCS file: /cvs/ports/telephony/iaxclient/Makefile,v
retrieving revision 1.32
diff -u -r1.32 Makefile
--- Makefile    4 Apr 2016 16:09:10 -0000       1.32
+++ Makefile    2 Jan 2017 11:50:21 -0000
@@ -6,7 +6,7 @@

 DISTNAME=      iaxclient-2.1beta3
 PKGNAME-main=  ${DISTNAME}
-REVISION-main= 15
+REVISION-main= 16
 PKGNAME-tcl=   ${DISTNAME:S/iaxclient/iaxclient-tcl/}
 REVISION-tcl=  17
 PKGNAME-iaxcomm= iaxcomm-1.1.0
Index: patches/patch-lib_spandsp_plc_c
===================================================================
RCS file: patches/patch-lib_spandsp_plc_c
diff -N patches/patch-lib_spandsp_plc_c
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ patches/patch-lib_spandsp_plc_c     2 Jan 2017 11:50:21 -0000
@@ -0,0 +1,15 @@
+$OpenBSD$
+
+memcpy -> memmove
+
+--- lib/spandsp/plc.c.orig     Mon Jan  2 12:29:58 2017
++++ lib/spandsp/plc.c  Mon Jan  2 12:33:28 2017
+@@ -99,7 +99,7 @@ static void normalise_history(plc_state_t *s)
+     if (s->buf_ptr == 0)
+         return;
+     memcpy(tmp, s->history, sizeof(int16_t)*s->buf_ptr);
+-    memcpy(s->history, s->history + s->buf_ptr, 
sizeof(int16_t)*(PLC_HISTORY_LEN - s->buf_ptr));
++    memmove(s->history, s->history + s->buf_ptr, 
sizeof(int16_t)*(PLC_HISTORY_LEN - s->buf_ptr));
+     memcpy(s->history + PLC_HISTORY_LEN - s->buf_ptr, tmp, 
sizeof(int16_t)*s->buf_ptr);
+     s->buf_ptr = 0;
+ }


Reply via email to