diff --git a/daemon/libs/iax2/jitterbuf.c b/daemon/libs/iax2/jitterbuf.c
index 0c78e9a26e06a18d9ab6ba766b80015ff67454c3..4465740e5b22f03da9376b5d491c10a61852d279 100644
--- a/daemon/libs/iax2/jitterbuf.c
+++ b/daemon/libs/iax2/jitterbuf.c
@@ -256,8 +256,10 @@ static void history_calc_maxbuf(jitterbuf *jb)
 			for (j=0;j<JB_HISTORY_MAXBUF_SZ;j++) {
 				/* found where it fits */
 				if (toins < jb->hist_minbuf[j]) {
-					/* move over */
-					memmove(jb->hist_minbuf + j + 1, jb->hist_minbuf + j, (JB_HISTORY_MAXBUF_SZ - (j + 1)) * sizeof(jb->hist_minbuf[0]));
+					/* move over if there's space */
+					const size_t slide = (JB_HISTORY_MAXBUF_SZ - (j + 1)) * sizeof(jb->hist_minbuf[0]);
+					if (slide > 0)
+						memmove(jb->hist_minbuf + j + 1, jb->hist_minbuf + j, slide);
 					/* insert */
 					jb->hist_minbuf[j] = toins;