libpurple/circbuffer.c

changeset 24505
6199bafdbc87
parent 20147
66f05a854eee
child 25731
b9fd4a560a72
child 25888
d0fdd378a635
--- a/libpurple/circbuffer.c	Tue Oct 21 16:26:31 2008 +0000
+++ b/libpurple/circbuffer.c	Wed Oct 22 03:49:14 2008 +0000
@@ -109,13 +109,12 @@
 	else
 		len_stored = len;
 
-	memcpy(buf->inptr, src, len_stored);
+	if (len_stored > 0)
+		memcpy(buf->inptr, src, len_stored);
 
 	if (len_stored < len) {
 		memcpy(buf->buffer, (char*)src + len_stored, len - len_stored);
 		buf->inptr = buf->buffer + (len - len_stored);
-	} else if ((buf->buffer - buf->inptr) == len_stored) {
-		buf->inptr = buf->buffer;
 	} else {
 		buf->inptr += len_stored;
 	}

mercurial