fix rounding issues in %f format

This commit is contained in:
Igor Sysoev 2010-05-12 13:13:11 +00:00
parent 503b9716c5
commit 50af406144

View File

@ -386,7 +386,7 @@ ngx_vslprintf(u_char *buf, u_char *last, const char *fmt, va_list args)
* (int64_t) cast is required for msvc6:
* it can not convert uint64_t to double
*/
ui64 = (uint64_t) ((f - (int64_t) ui64) * scale);
ui64 = (uint64_t) ((f - (int64_t) ui64) * scale + 0.5);
buf = ngx_sprintf_num(buf, last, ui64, '0', 0, frac_width);
}