mirror of
git://source.winehq.org/git/wine.git
synced 2024-10-14 22:17:32 +00:00
msvcr120: Don't modify fenv_t members in math functions.
Signed-off-by: Piotr Caban <piotr@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
0f721c2f00
commit
593ddf0b66
|
@ -4750,12 +4750,8 @@ double CDECL acosh(double x)
|
|||
{
|
||||
if (x < 1)
|
||||
{
|
||||
fenv_t env;
|
||||
|
||||
*_errno() = EDOM;
|
||||
fegetenv(&env);
|
||||
env._Fe_stat |= FE_INVALID;
|
||||
fesetenv(&env);
|
||||
feraiseexcept(FE_INVALID);
|
||||
return NAN;
|
||||
}
|
||||
return unix_funcs->acosh( x );
|
||||
|
@ -4768,12 +4764,8 @@ float CDECL acoshf(float x)
|
|||
{
|
||||
if (x < 1)
|
||||
{
|
||||
fenv_t env;
|
||||
|
||||
*_errno() = EDOM;
|
||||
fegetenv(&env);
|
||||
env._Fe_stat |= FE_INVALID;
|
||||
fesetenv(&env);
|
||||
feraiseexcept(FE_INVALID);
|
||||
return NAN;
|
||||
}
|
||||
return unix_funcs->acoshf( x );
|
||||
|
@ -4787,14 +4779,9 @@ double CDECL atanh(double x)
|
|||
double ret;
|
||||
|
||||
if (x > 1 || x < -1) {
|
||||
fenv_t env;
|
||||
|
||||
*_errno() = EDOM;
|
||||
|
||||
/* on Linux atanh returns -NAN in this case */
|
||||
fegetenv(&env);
|
||||
env._Fe_stat |= FE_INVALID;
|
||||
fesetenv(&env);
|
||||
feraiseexcept(FE_INVALID);
|
||||
return NAN;
|
||||
}
|
||||
ret = unix_funcs->atanh( x );
|
||||
|
@ -4811,13 +4798,8 @@ float CDECL atanhf(float x)
|
|||
float ret;
|
||||
|
||||
if (x > 1 || x < -1) {
|
||||
fenv_t env;
|
||||
|
||||
*_errno() = EDOM;
|
||||
|
||||
fegetenv(&env);
|
||||
env._Fe_stat |= FE_INVALID;
|
||||
fesetenv(&env);
|
||||
feraiseexcept(FE_INVALID);
|
||||
return NAN;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue