msvcrt: Use Dragon4 algorithm to fix inconsistent rounding behaviour for sprintf and add tests. The Dragon4 algorithm implementation is based on http://www.ryanjuckett.com/programming/printing-floating-point-numbers/.

YongHao Hu christopherwuy at gmail.com
Wed Mar 25 02:46:46 CDT 2015


Try 3:
- Superseded Patch 109456.
- Use appropriate win32 types instead of typedef.
    (Thanks Dmitry Timoshkov)

Try 2:
- Superseded Patch 109432
- Use typedef instead of C99 types
- Delete useless #ifndef
- Add memset to test

Try1:
- Fix bug https://bugs.winehq.org/show_bug.cgi?id=37913 .
- The Dragon4 algorithm implementation is based on 
http://www.ryanjuckett.com/programming/printing-floating-point-numbers/.

---
  dlls/msvcrt/dragon4.h         | 668 
++++++++++++++++++++++++++++++++++++++++++
  dlls/msvcrt/printf.h          |  43 +--
  dlls/msvcrt/tests/printf.c    |  96 ++++++
  dlls/msvcrt/wine_printfloat.h | 246 ++++++++++++++++
  4 files changed, 1036 insertions(+), 17 deletions(-)
  create mode 100644 dlls/msvcrt/dragon4.h
  create mode 100644 dlls/msvcrt/wine_printfloat.h


-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0012-msvcrt-Use-Dragon4-algorithm-to-fix-inconsistent-round.txt
Type: text/x-patch
Size: 37163 bytes
Desc: not available
URL: <http://www.winehq.org/pipermail/wine-patches/attachments/20150325/7394c7d6/attachment-0001.bin>


More information about the wine-patches mailing list