Piotr Caban : msvcrt: Use floating point exception signals definition from public header.
Alexandre Julliard
julliard at winehq.org
Tue Dec 1 15:40:35 CST 2020
Module: wine
Branch: master
Commit: 9e085387ac8e6a6c34bc6e7bec8135ef84a247d6
URL: https://source.winehq.org/git/wine.git/?a=commit;h=9e085387ac8e6a6c34bc6e7bec8135ef84a247d6
Author: Piotr Caban <piotr at codeweavers.com>
Date: Tue Dec 1 13:52:16 2020 +0100
msvcrt: Use floating point exception signals definition from public header.
Signed-off-by: Piotr Caban <piotr at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
dlls/msvcrt/except.c | 19 ++++++++++---------
dlls/msvcrt/msvcrt.h | 12 ------------
2 files changed, 10 insertions(+), 21 deletions(-)
diff --git a/dlls/msvcrt/except.c b/dlls/msvcrt/except.c
index 94cee55a7d7..91db1b67332 100644
--- a/dlls/msvcrt/except.c
+++ b/dlls/msvcrt/except.c
@@ -21,6 +21,7 @@
* FIXME: Incomplete support for nested exceptions/try block cleanup.
*/
+#include <float.h>
#include <stdarg.h>
#include <stdbool.h>
@@ -79,13 +80,13 @@ static const struct
NTSTATUS status;
int signal;
} float_exception_map[] = {
- { EXCEPTION_FLT_DENORMAL_OPERAND, MSVCRT__FPE_DENORMAL },
- { EXCEPTION_FLT_DIVIDE_BY_ZERO, MSVCRT__FPE_ZERODIVIDE },
- { EXCEPTION_FLT_INEXACT_RESULT, MSVCRT__FPE_INEXACT },
- { EXCEPTION_FLT_INVALID_OPERATION, MSVCRT__FPE_INVALID },
- { EXCEPTION_FLT_OVERFLOW, MSVCRT__FPE_OVERFLOW },
- { EXCEPTION_FLT_STACK_CHECK, MSVCRT__FPE_STACKOVERFLOW },
- { EXCEPTION_FLT_UNDERFLOW, MSVCRT__FPE_UNDERFLOW },
+ { EXCEPTION_FLT_DENORMAL_OPERAND, _FPE_DENORMAL },
+ { EXCEPTION_FLT_DIVIDE_BY_ZERO, _FPE_ZERODIVIDE },
+ { EXCEPTION_FLT_INEXACT_RESULT, _FPE_INEXACT },
+ { EXCEPTION_FLT_INVALID_OPERATION, _FPE_INVALID },
+ { EXCEPTION_FLT_OVERFLOW, _FPE_OVERFLOW },
+ { EXCEPTION_FLT_STACK_CHECK, _FPE_STACKOVERFLOW },
+ { EXCEPTION_FLT_UNDERFLOW, _FPE_UNDERFLOW },
};
static LONG msvcrt_exception_filter(struct _EXCEPTION_POINTERS *except)
@@ -131,7 +132,7 @@ static LONG msvcrt_exception_filter(struct _EXCEPTION_POINTERS *except)
{
EXCEPTION_POINTERS **ep = (EXCEPTION_POINTERS**)MSVCRT___pxcptinfoptrs(), *old_ep;
unsigned int i;
- int float_signal = MSVCRT__FPE_INVALID;
+ int float_signal = _FPE_INVALID;
sighandlers[MSVCRT_SIGFPE] = MSVCRT_SIG_DFL;
for (i = 0; i < ARRAY_SIZE(float_exception_map); i++)
@@ -242,7 +243,7 @@ int CDECL MSVCRT_raise(int sig)
old_ep = *ep;
*ep = NULL;
if (sig == MSVCRT_SIGFPE)
- ((float_handler)handler)(sig, MSVCRT__FPE_EXPLICITGEN);
+ ((float_handler)handler)(sig, _FPE_EXPLICITGEN);
else
handler(sig);
*ep = old_ep;
diff --git a/dlls/msvcrt/msvcrt.h b/dlls/msvcrt/msvcrt.h
index 5b1e5ac40b0..2e720999318 100644
--- a/dlls/msvcrt/msvcrt.h
+++ b/dlls/msvcrt/msvcrt.h
@@ -678,18 +678,6 @@ typedef void (__cdecl *MSVCRT___sighandler_t)(int);
#define MSVCRT_SIG_IGN ((MSVCRT___sighandler_t)1)
#define MSVCRT_SIG_ERR ((MSVCRT___sighandler_t)-1)
-#define MSVCRT__FPE_INVALID 0x81
-#define MSVCRT__FPE_DENORMAL 0x82
-#define MSVCRT__FPE_ZERODIVIDE 0x83
-#define MSVCRT__FPE_OVERFLOW 0x84
-#define MSVCRT__FPE_UNDERFLOW 0x85
-#define MSVCRT__FPE_INEXACT 0x86
-#define MSVCRT__FPE_UNEMULATED 0x87
-#define MSVCRT__FPE_SQRTNEG 0x88
-#define MSVCRT__FPE_STACKOVERFLOW 0x8a
-#define MSVCRT__FPE_STACKUNDERFLOW 0x8b
-#define MSVCRT__FPE_EXPLICITGEN 0x8c
-
#define MSVCRT__TRUNCATE ((size_t)-1)
#define _MAX__TIME64_T (((__time64_t)0x00000007 << 32) | 0x93406FFF)
More information about the wine-cvs
mailing list