From: Daniel Lehman dlehman25@gmail.com
--- dlls/msvcr120/tests/msvcr120.c | 6 ------ dlls/msvcrt/math.c | 5 +++-- 2 files changed, 3 insertions(+), 8 deletions(-)
diff --git a/dlls/msvcr120/tests/msvcr120.c b/dlls/msvcr120/tests/msvcr120.c index e4a1cee8984..6d9f37ad5b2 100644 --- a/dlls/msvcr120/tests/msvcr120.c +++ b/dlls/msvcr120/tests/msvcr120.c @@ -1089,11 +1089,9 @@ static void test_feenv(void) memset(&env, 0xfe, sizeof(env)); ret = p_feholdexcept(&env); ok(!ret, "feholdexcept returned %x\n", ret); - todo_wine { ok(env._Fe_ctl == (_EM_INEXACT|_EM_UNDERFLOW|_EM_OVERFLOW|_EM_ZERODIVIDE|_EM_INVALID), "env._Fe_ctl = %lx\n", env._Fe_ctl); ok(!env._Fe_stat, "env._Fe_stat = %lx\n", env._Fe_stat); - } except = FE_ALL_EXCEPT; ret = p_fesetexceptflag(&except, FE_INEXACT|FE_UNDERFLOW); ok(!ret, "fesetexceptflag returned %x\n", ret); @@ -1104,11 +1102,9 @@ static void test_feenv(void) memset(&env, 0xfe, sizeof(env)); ret = p_fegetenv(&env); ok(!ret, "feholdexcept returned %x\n", ret); - todo_wine { ok(env._Fe_ctl == (_EM_INEXACT|_EM_UNDERFLOW|_EM_OVERFLOW|_EM_ZERODIVIDE|_EM_INVALID), "env._Fe_ctl = %lx\n", env._Fe_ctl); ok(!env._Fe_stat, "env._Fe_stat = %lx\n", env._Fe_stat); - }
except = FE_ALL_EXCEPT; ret = p_fesetexceptflag(&except, FE_INEXACT|FE_UNDERFLOW); @@ -1116,11 +1112,9 @@ static void test_feenv(void) memset(&env, 0xfe, sizeof(env)); ret = p_feholdexcept(&env); ok(!ret, "feholdexcept returned %x\n", ret); - todo_wine { ok(env._Fe_ctl == (_EM_INEXACT|_EM_UNDERFLOW|_EM_OVERFLOW|_EM_ZERODIVIDE|_EM_INVALID), "env._Fe_ctl = %lx\n", env._Fe_ctl); ok(env._Fe_stat == (FE_INEXACT|FE_UNDERFLOW), "env._Fe_stat = %lx\n", env._Fe_stat); - } p__clearfp(); }
diff --git a/dlls/msvcrt/math.c b/dlls/msvcrt/math.c index 1c1d5227b1b..be345fb7a4a 100644 --- a/dlls/msvcrt/math.c +++ b/dlls/msvcrt/math.c @@ -1568,8 +1568,9 @@ void CDECL _fpreset(void) */ int CDECL feholdexcept(fenv_t *env) { - FIXME( "(%p) stub\n", env ); - return 0; + TRACE( "(%p)\n", env ); + fegetenv(env); + return feclearexcept(FE_ALL_EXCEPT); }
/*********************************************************************