diff options
author | Nguyễn Thái Ngọc Duy <pclouds@gmail.com> | 2010-04-05 22:21:04 +0200 |
---|---|---|
committer | Nguyễn Thái Ngọc Duy <pclouds@gmail.com> | 2010-09-10 18:50:02 +1000 |
commit | c9aaf1cc94c9435736df9049c0ed9c961443c7b6 (patch) | |
tree | a9bff0b4914f54b98b35b692e0eba015077721b4 | |
parent | b0448466846c5f050468fd90bd612a1ab84897c9 (diff) | |
download | busybox-w32-c9aaf1cc94c9435736df9049c0ed9c961443c7b6.tar.gz busybox-w32-c9aaf1cc94c9435736df9049c0ed9c961443c7b6.tar.bz2 busybox-w32-c9aaf1cc94c9435736df9049c0ed9c961443c7b6.zip |
win32: copy_file: always use lstat to avoid macro conflict
stat() in win32 port is actual a macro, not a function. Doing it the
way it is now won't work. stat/lstat is not different in Windows
anyway.
-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)) |