From 01c8daf4b4ddfe4be172abd0b536b1605abeb175 Mon Sep 17 00:00:00 2001 From: Roman Arutyunyan Date: Thu, 13 Jun 2013 13:47:43 +0400 Subject: [PATCH] fixed broken msvc memcpy optimization for 4-byte data --- ngx_rtmp_stat_module.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/ngx_rtmp_stat_module.c b/ngx_rtmp_stat_module.c index 322a0af..eb40cfb 100644 --- a/ngx_rtmp_stat_module.c +++ b/ngx_rtmp_stat_module.c @@ -204,6 +204,15 @@ ngx_rtmp_stat_output(ngx_http_request_t *r, ngx_chain_t ***lll, if (escape) { b->last = (u_char *)ngx_escape_html(b->last, data, len); } else { +#if (NGX_WIN32) + /* fix broken MSVC memcpy optimization for 4-byte data */ + + if (len == 4) { + *(uint32_t *) b->last = *(uint32_t *) data; + b->last += 4; + return; + } +#endif b->last = ngx_cpymem(b->last, data, len); } }