summaryrefslogtreecommitdiffstats
path: root/win/tclWinPort.h
diff options
context:
space:
mode:
authorjan.nijtmans <nijtmans@users.sourceforge.net>2011-04-21 08:49:52 (GMT)
committerjan.nijtmans <nijtmans@users.sourceforge.net>2011-04-21 08:49:52 (GMT)
commit00ffa6c31944e0537fefd0dd70ca3aded31e6336 (patch)
tree170c82b377323ccaaa1d7543c9ca9c75ff3bf2c4 /win/tclWinPort.h
parent95c1b15bcdb4d087a64ead65b5b133d07513d5c8 (diff)
parent7d0a560d355159a6a8013f1edc7aedea37e7cf73 (diff)
downloadtcl-00ffa6c31944e0537fefd0dd70ca3aded31e6336.zip
tcl-00ffa6c31944e0537fefd0dd70ca3aded31e6336.tar.gz
tcl-00ffa6c31944e0537fefd0dd70ca3aded31e6336.tar.bz2
fix for [Bug 3288345]: Wrong Tcl_StatBufused on MinGW.
Make sure that all _WIN32 compilers use exactly the same layout for Tcl_StatBuf - the one used by MSVC6 - in all situations.
Diffstat (limited to 'win/tclWinPort.h')
-rw-r--r--win/tclWinPort.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/win/tclWinPort.h b/win/tclWinPort.h
index f7e16a2..9c9831c 100644
--- a/win/tclWinPort.h
+++ b/win/tclWinPort.h
@@ -113,6 +113,25 @@
#include <time.h>
/*
+ * Not all mingw32 versions have this struct.
+ */
+#if !defined(__BORLANDC__) && !defined(_MSC_VER) && !defined(_WIN64) && !defined(HAVE_STRUCT_STAT32I64)
+ struct _stat32i64 {
+ _dev_t st_dev;
+ _ino_t st_ino;
+ unsigned short st_mode;
+ short st_nlink;
+ short st_uid;
+ short st_gid;
+ _dev_t st_rdev;
+ __int64 st_size;
+ long st_atime;
+ long st_mtime;
+ long st_ctime;
+ };
+#endif
+
+/*
* The following defines redefine the Windows Socket errors as
* BSD errors so Tcl_PosixError can do the right thing.
*/