diff options
Diffstat (limited to 'generic')
-rw-r--r-- | generic/tcl.h | 2 | ||||
-rw-r--r-- | generic/tclCmdMZ.c | 2 | ||||
-rw-r--r-- | generic/tclFCmd.c | 5 | ||||
-rw-r--r-- | generic/tclTest.c | 5 |
4 files changed, 12 insertions, 2 deletions
diff --git a/generic/tcl.h b/generic/tcl.h index e5e38a8..21cd0c4 100644 --- a/generic/tcl.h +++ b/generic/tcl.h @@ -360,7 +360,7 @@ typedef struct stati64 Tcl_StatBuf; # else /* __BORLANDC__ */ # if defined(_WIN64) typedef struct __stat64 Tcl_StatBuf; -# elif (defined(_MSC_VER) && (_MSC_VER < 1400)) +# elif (defined(_MSC_VER) && (_MSC_VER < 1400)) || defined(_USE_32BIT_TIME_T) typedef struct _stati64 Tcl_StatBuf; # else typedef struct _stat32i64 Tcl_StatBuf; diff --git a/generic/tclCmdMZ.c b/generic/tclCmdMZ.c index 60a9414..ab673d5 100644 --- a/generic/tclCmdMZ.c +++ b/generic/tclCmdMZ.c @@ -264,7 +264,7 @@ Tcl_RegexpObjCmd( * start of the string unless the previous character is a newline. */ - if ((offset == 0) || ((offset > 0) && + if ((offset == 0) || ((offset > 0) && (offset < stringLength) && (Tcl_GetUniChar(objPtr, offset-1) == (Tcl_UniChar)'\n'))) { eflags = 0; } else { diff --git a/generic/tclFCmd.c b/generic/tclFCmd.c index 2b4977b..cc4f013 100644 --- a/generic/tclFCmd.c +++ b/generic/tclFCmd.c @@ -10,6 +10,11 @@ * this file, and for a DISCLAIMER OF ALL WARRANTIES. */ +#ifndef _WIN64 +/* See [Bug 2935503]: file mtime sets wrong time */ +# define _USE_32BIT_TIME_T +#endif + #include "tclInt.h" /* diff --git a/generic/tclTest.c b/generic/tclTest.c index 98208af..cb0faad 100644 --- a/generic/tclTest.c +++ b/generic/tclTest.c @@ -15,6 +15,11 @@ * this file, and for a DISCLAIMER OF ALL WARRANTIES. */ +#ifndef _WIN64 +/* See [Bug 2935503]: file mtime sets wrong time */ +# define _USE_32BIT_TIME_T +#endif + #define TCL_TEST #include "tclInt.h" |