aboutsummaryrefslogtreecommitdiff
path: root/libbb
diff options
context:
space:
mode:
authorZheng, Lei <zhenglei@pmail.ntu.edu.sg>2011-11-20 16:46:31 +0800
committerZheng, Lei <zhenglei@pmail.ntu.edu.sg>2011-11-20 16:46:31 +0800
commit681755bcf5506109375e6fb9fc777461a704cf36 (patch)
tree77c0c3c05448cde4d64c0f743d252c7db3ccc9da /libbb
parent846ac8422390ed9aa1f572a6089f2a7fc41f4aed (diff)
downloadbusybox-w32-681755bcf5506109375e6fb9fc777461a704cf36.tar.gz
busybox-w32-681755bcf5506109375e6fb9fc777461a704cf36.tar.bz2
busybox-w32-681755bcf5506109375e6fb9fc777461a704cf36.zip
Added missing stat() tweaks for mingw port
Diffstat (limited to 'libbb')
-rw-r--r--libbb/copy_file.c3
-rw-r--r--libbb/recursive_action.c5
2 files changed, 8 insertions, 0 deletions
diff --git a/libbb/copy_file.c b/libbb/copy_file.c
index 2134ee046..d9bbb6ba3 100644
--- a/libbb/copy_file.c
+++ b/libbb/copy_file.c
@@ -105,12 +105,15 @@ int FAST_FUNC copy_file(const char *source, const char *dest, int flags)
105 return -1; 105 return -1;
106 } 106 }
107 } else { 107 } else {
108#if !ENABLE_PLATFORM_MINGW32
109 /* MinGW does not have inode, and does not use device */
108 if (source_stat.st_dev == dest_stat.st_dev 110 if (source_stat.st_dev == dest_stat.st_dev
109 && source_stat.st_ino == dest_stat.st_ino 111 && source_stat.st_ino == dest_stat.st_ino
110 ) { 112 ) {
111 bb_error_msg("'%s' and '%s' are the same file", source, dest); 113 bb_error_msg("'%s' and '%s' are the same file", source, dest);
112 return -1; 114 return -1;
113 } 115 }
116#endif
114 dest_exists = 1; 117 dest_exists = 1;
115 } 118 }
116 119
diff --git a/libbb/recursive_action.c b/libbb/recursive_action.c
index b5cf7c0ab..560c93cad 100644
--- a/libbb/recursive_action.c
+++ b/libbb/recursive_action.c
@@ -73,7 +73,12 @@ int FAST_FUNC recursive_action(const char *fileName,
73 if (depth == 0) 73 if (depth == 0)
74 follow = ACTION_FOLLOWLINKS | ACTION_FOLLOWLINKS_L0; 74 follow = ACTION_FOLLOWLINKS | ACTION_FOLLOWLINKS_L0;
75 follow &= flags; 75 follow &= flags;
76#if ENABLE_PLATFORM_MINGW32
77 /* stat can't be aliased, and MinGW uses lstat anyway */
78 status = lstat(fileName, &statbuf);
79#else
76 status = (follow ? stat : lstat)(fileName, &statbuf); 80 status = (follow ? stat : lstat)(fileName, &statbuf);
81#endif
77 if (status < 0) { 82 if (status < 0) {
78#ifdef DEBUG_RECURS_ACTION 83#ifdef DEBUG_RECURS_ACTION
79 bb_error_msg("status=%d flags=%x", status, flags); 84 bb_error_msg("status=%d flags=%x", status, flags);