diff options
-rw-r--r-- | libbb/copy_file.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/libbb/copy_file.c b/libbb/copy_file.c index ed765d8f0..80a64f791 100644 --- a/libbb/copy_file.c +++ b/libbb/copy_file.c | |||
@@ -85,7 +85,12 @@ int FAST_FUNC copy_file(const char *source, const char *dest, int flags) | |||
85 | /* Inverse of cp -d ("cp without -d") */ | 85 | /* Inverse of cp -d ("cp without -d") */ |
86 | #define FLAGS_DEREF (flags & (FILEUTILS_DEREFERENCE + FILEUTILS_DEREFERENCE_L0)) | 86 | #define FLAGS_DEREF (flags & (FILEUTILS_DEREFERENCE + FILEUTILS_DEREFERENCE_L0)) |
87 | 87 | ||
88 | #if ENABLE_PLATFORM_MINGW32 | ||
89 | /* stat can't be aliased, and MinGW uses lstat anyway */ | ||
90 | if (lstat(source, &source_stat) < 0) { | ||
91 | #else | ||
88 | if ((FLAGS_DEREF ? stat : lstat)(source, &source_stat) < 0) { | 92 | if ((FLAGS_DEREF ? stat : lstat)(source, &source_stat) < 0) { |
93 | #endif | ||
89 | /* This may be a dangling symlink. | 94 | /* This may be a dangling symlink. |
90 | * Making [sym]links to dangling symlinks works, so... */ | 95 | * Making [sym]links to dangling symlinks works, so... */ |
91 | if (flags & (FILEUTILS_MAKE_SOFTLINK|FILEUTILS_MAKE_HARDLINK)) | 96 | if (flags & (FILEUTILS_MAKE_SOFTLINK|FILEUTILS_MAKE_HARDLINK)) |