From ac73ae0b83cc72eff19f2f6c26d0b55f49b2e0c3 Mon Sep 17 00:00:00 2001 From: Willy Tarreau Date: Tue, 11 Dec 2018 06:27:06 +0100 Subject: [PATCH] MINOR: hpack: use ist2bin() to copy header names in hpack_encode_header() memcpy() tends to be overkill to copy short strings, better use ist's naive functions for this. This shows a consistent 1.2% performance gain with h2load. --- src/hpack-enc.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/hpack-enc.c b/src/hpack-enc.c index 7c6ef6f80..73a5fd167 100644 --- a/src/hpack-enc.c +++ b/src/hpack-enc.c @@ -116,9 +116,8 @@ int hpack_encode_header(struct buffer *out, const struct ist n, out->area[len++] = 0x5c; // literal with indexing -- name="content-length" (idx 28) else if (len_to_bytes(n.len) && len + 1 + len_to_bytes(n.len) + n.len <= size) { out->area[len++] = 0x00; /* literal without indexing -- new name */ - len = hpack_encode_len(out->area, len, n.len); - memcpy(out->area + len, n.ptr, n.len); + ist2bin(out->area + len, n); len += n.len; } else {