diff --git a/include/proto/buffers.h b/include/proto/buffers.h
index ab47b4f..3a43678 100644
--- a/include/proto/buffers.h
+++ b/include/proto/buffers.h
@@ -331,13 +331,13 @@
  * Advance the buffer's read pointer by <len> bytes. This is useful when data
  * have been read directly from the buffer. It is illegal to call this function
  * with <len> causing a wrapping at the end of the buffer. It's the caller's
- * responsibility to ensure that <len> is never larger than buffer_contig_data.
+ * responsibility to ensure that <len> is never larger than buf->send_max.
  */
 static inline void buffer_skip(struct buffer *buf, int len)
 {
 	buf->w += len;
-	if (buf->w == buf->data + buf->size)
-		buf->w = buf->data; /* wrap around the buffer */
+	if (buf->w >= buf->data + buf->size)
+		buf->w -= buf->size; /* wrap around the buffer */
 
 	buf->l -= len;
 	if (!buf->l)
diff --git a/src/buffers.c b/src/buffers.c
index dd5c003..724400f 100644
--- a/src/buffers.c
+++ b/src/buffers.c
@@ -151,7 +151,7 @@
 
 	if (max > buf->send_max) {
 		max = buf->send_max;
-		str[max] = 0;
+		str[max-1] = 0;
 	}
 	while (max) {
 		*str++ = *p;
@@ -164,8 +164,9 @@
 		if (p == buf->data + buf->size)
 			p = buf->data;
 	}
-	if (*p != '\n' && ret < len && ret < buf->max_len &&
-	   !(buf->flags & (BF_SHUTW|BF_SHUTW_NOW)))
+	if (ret > 0 && ret < len && ret < buf->send_max &&
+	    *(str-1) != '\n' &&
+	    !(buf->flags & (BF_SHUTW|BF_SHUTW_NOW)))
 		ret = 0;
  out:
 	if (max)
