summaryrefslogtreecommitdiffstats
path: root/Utilities/cmtar/extract.c
diff options
context:
space:
mode:
Diffstat (limited to 'Utilities/cmtar/extract.c')
-rw-r--r--Utilities/cmtar/extract.c22
1 files changed, 14 insertions, 8 deletions
diff --git a/Utilities/cmtar/extract.c b/Utilities/cmtar/extract.c
index 506dff1..7ceece1 100644
--- a/Utilities/cmtar/extract.c
+++ b/Utilities/cmtar/extract.c
@@ -17,14 +17,20 @@
#include <sys/types.h>
#include <fcntl.h>
#include <errno.h>
-#ifdef _MSC_VER
-#include <sys/utime.h>
-#include <io.h>
-#include <direct.h>
+
+#if defined(_WIN32) && !defined(__CYGWIN__)
+# ifdef _MSC_VER
+# include <sys/utime.h>
+# else
+# include <utime.h>
+# endif
+# include <io.h>
+# include <direct.h>
#else
-#include <utime.h>
-#include <sys/param.h>
+# include <utime.h>
+# include <sys/param.h>
#endif
+
#ifdef STDC_HEADERS
# include <stdlib.h>
# include <string.h>
@@ -41,8 +47,8 @@
struct linkname
{
- char ln_save[MAXPATHLEN];
- char ln_real[MAXPATHLEN];
+ char ln_save[TAR_MAXPATHLEN];
+ char ln_real[TAR_MAXPATHLEN];
};
typedef struct linkname linkname_t;