From 7cadcf4aa37dfafb9cf98c9ef7295feab5439d11 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Przemys=C5=82aw=20Czerpak?= Date: Wed, 6 Apr 2016 15:49:03 +0200 Subject: [PATCH] 2016-04-06 15:49 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl) * src/common/hbprintf.c * pacified warnings --- ChangeLog.txt | 4 ++++ src/common/hbprintf.c | 10 ++++++---- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/ChangeLog.txt b/ChangeLog.txt index e24df47856..91f80157bd 100644 --- a/ChangeLog.txt +++ b/ChangeLog.txt @@ -10,6 +10,10 @@ * Change, ! Fix, % Optimization, + Addition, - Removal, ; Comment */ +2016-04-06 15:49 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl) + * src/common/hbprintf.c + * pacified warnings + 2016-04-06 15:18 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl) * src/common/hbstr.c * src/rtl/hbcom.c diff --git a/src/common/hbprintf.c b/src/common/hbprintf.c index bd1e068225..76f97b20c3 100644 --- a/src/common/hbprintf.c +++ b/src/common/hbprintf.c @@ -159,9 +159,11 @@ #ifndef __NO_DOUBLE__ # ifdef __NO_LONGDOUBLE__ # define _x_long_dbl double +# define _FL_FIX 0.0078125 # define _MODFD( x, p ) modf( x, p ) # else # define _x_long_dbl long double +# define _FL_FIX 0.0078125L # if defined( HB_NO_MODFL ) || \ defined( __WATCOMC__ ) || defined( __MINGW32CE__ ) || defined( HB_OS_CYGWIN ) || \ defined( HB_OS_BEOS ) || defined( HB_OS_SYMBIAN ) || \ @@ -564,7 +566,7 @@ static size_t put_dbl( char *buffer, size_t bufsize, size_t size, do { ++nums; - _MODFD( value / 10 + 0.01, &value ); + _MODFD( value / 10 + _FL_FIX, &value ); } while( value >= 1 ); width -= nums; @@ -597,8 +599,8 @@ static size_t put_dbl( char *buffer, size_t bufsize, size_t size, n = nums; do { - value = _MODFD( dInt / 10 + 0.01, &dInt ) * 10; - c = '0' + ( char ) ( value + 0.01 ); + value = _MODFD( dInt / 10 + _FL_FIX, &dInt ) * 10; + c = '0' + ( char ) ( value + _FL_FIX ); --n; if( size + n < bufsize ) buffer[ size + n ] = c; @@ -614,7 +616,7 @@ static size_t put_dbl( char *buffer, size_t bufsize, size_t size, while( precision > 0 ) { dFract = _MODFD( dFract * 10, &dInt ); - c = '0' + ( char ) ( dInt + 0.01 ); + c = '0' + ( char ) ( dInt + _FL_FIX ); if( size < bufsize ) buffer[ size ] = c; ++size;