diff --git a/include/proto/h1.h b/include/proto/h1.h
index d8b90cb..b0051e3 100644
--- a/include/proto/h1.h
+++ b/include/proto/h1.h
@@ -175,7 +175,8 @@
 	return bytes;
 }
 
-/* Parse the chunk size start at buf->p + start and stops before buf->p + stop.
+/* Parse the chunk size start at buf + start and stops before buf + stop. The
+ * positions are relative to the buffer's head.
  * It returns the chunk size in <res> and the amount of bytes read this way :
  *   < 0 : error at this position relative to <stop>
  *   = 0 : not enough bytes to read a complete chunk size
@@ -189,9 +190,9 @@
  */
 static inline int h1_parse_chunk_size(const struct buffer *buf, int start, int stop, unsigned int *res)
 {
-	const char *ptr = b_ptr(buf, start);
+	const char *ptr = b_peek(buf, start);
 	const char *ptr_old = ptr;
-	const char *end = buf->data + buf->size;
+	const char *end = b_wrap(buf);
 	unsigned int chunk = 0;
 
 	stop -= start; // bytes left
diff --git a/src/mux_h2.c b/src/mux_h2.c
index 98c97d8..e75a2ba 100644
--- a/src/mux_h2.c
+++ b/src/mux_h2.c
@@ -3197,8 +3197,7 @@
 
 		if (h1m->state == HTTP_MSG_CHUNK_SIZE) {
 			unsigned int chunk;
-			// FIXME: this one still uses the old buffer API and ignores <ofs>
-			ret = h1_parse_chunk_size(buf, -max, 0, &chunk);
+			ret = h1_parse_chunk_size(buf, ofs, ofs + max, &chunk);
 			if (!ret)
 				goto end;
 
diff --git a/src/proto_http.c b/src/proto_http.c
index 3904b63..78e0bad 100644
--- a/src/proto_http.c
+++ b/src/proto_http.c
@@ -4142,7 +4142,7 @@
 		 * TRAILERS state.
 		 */
 		unsigned int chunk;
-		int ret = h1_parse_chunk_size(req->buf, msg->next, req->buf->i, &chunk);
+		int ret = h1_parse_chunk_size(req->buf, co_data(req) + msg->next, b_data(req->buf), &chunk);
 
 		if (!ret)
 			goto missing_data;
@@ -6371,7 +6371,7 @@
 			 * then set ->next to point to the body and switch to
 			 * DATA or TRAILERS state.
 			 */
-			ret = h1_parse_chunk_size(chn->buf, msg->next, chn->buf->i, &chunk);
+			ret = h1_parse_chunk_size(chn->buf, co_data(chn) + msg->next, b_data(chn->buf), &chunk);
 			if (ret == 0)
 				goto missing_data_or_waiting;
 			if (ret < 0) {
