Alex Henrie : msvcrt: Don' t set errno in log functions if x is positive infinity.
Module: wine Branch: master Commit: f5d3ba5888ce8474a001ff975a7b5163d1e5c2ec URL: http://source.winehq.org/git/wine.git/?a=commit;h=f5d3ba5888ce8474a001ff975a... Author: Alex Henrie <alexhenrie24(a)gmail.com> Date: Mon Jul 17 22:33:53 2017 -0600 msvcrt: Don't set errno in log functions if x is positive infinity. Signed-off-by: Alex Henrie <alexhenrie24(a)gmail.com> Signed-off-by: Piotr Caban <piotr(a)codeweavers.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- dlls/msvcrt/math.c | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/dlls/msvcrt/math.c b/dlls/msvcrt/math.c index 637f920..b030a63 100644 --- a/dlls/msvcrt/math.c +++ b/dlls/msvcrt/math.c @@ -225,10 +225,10 @@ float CDECL MSVCRT_fmodf( float x, float y ) /********************************************************************* * MSVCRT_logf (MSVCRT.@) */ -float CDECL MSVCRT_logf( float x) +float CDECL MSVCRT_logf( float x ) { - if (x < 0.0 || !finitef(x)) *MSVCRT__errno() = MSVCRT_EDOM; - if (x == 0.0) *MSVCRT__errno() = MSVCRT_ERANGE; + if (x < 0.0) *MSVCRT__errno() = MSVCRT_EDOM; + else if (x == 0.0) *MSVCRT__errno() = MSVCRT_ERANGE; return logf(x); } @@ -237,8 +237,8 @@ float CDECL MSVCRT_logf( float x) */ float CDECL MSVCRT_log10f( float x ) { - if (x < 0.0 || !finitef(x)) *MSVCRT__errno() = MSVCRT_EDOM; - if (x == 0.0) *MSVCRT__errno() = MSVCRT_ERANGE; + if (x < 0.0) *MSVCRT__errno() = MSVCRT_EDOM; + else if (x == 0.0) *MSVCRT__errno() = MSVCRT_ERANGE; return log10f(x); } @@ -420,10 +420,10 @@ double CDECL MSVCRT_fmod( double x, double y ) /********************************************************************* * MSVCRT_log (MSVCRT.@) */ -double CDECL MSVCRT_log( double x) +double CDECL MSVCRT_log( double x ) { - if (x < 0.0 || !isfinite(x)) *MSVCRT__errno() = MSVCRT_EDOM; - if (x == 0.0) *MSVCRT__errno() = MSVCRT_ERANGE; + if (x < 0.0) *MSVCRT__errno() = MSVCRT_EDOM; + else if (x == 0.0) *MSVCRT__errno() = MSVCRT_ERANGE; return log(x); } @@ -432,8 +432,8 @@ double CDECL MSVCRT_log( double x) */ double CDECL MSVCRT_log10( double x ) { - if (x < 0.0 || !isfinite(x)) *MSVCRT__errno() = MSVCRT_EDOM; - if (x == 0.0) *MSVCRT__errno() = MSVCRT_ERANGE; + if (x < 0.0) *MSVCRT__errno() = MSVCRT_EDOM; + else if (x == 0.0) *MSVCRT__errno() = MSVCRT_ERANGE; return log10(x); }
participants (1)
-
Alexandre Julliard