diff --git a/lib/header.c b/lib/header.c index 8d83f5cbc..dcf73f5d3 100644 --- a/lib/header.c +++ b/lib/header.c @@ -42,11 +42,14 @@ int lws_add_http_header_by_name(struct libwebsocket_context *context, return lws_add_http2_header_by_name(context, wsi, name, value, length, p, end); #endif if (name) { + char sep = '\0'; while (*p < end && *name) - *((*p)++) = *name++; - if (*p == end) - return 1; - *((*p)++) = ' '; + *((*p)++) = sep = *name++; + if (':' != sep) { + if (*p == end) + return 1; + *((*p)++) = ':'; + } } if (*p + length + 3 >= end) return 1;