Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/windirstat/llfio.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNiall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) <spamtrap@nedprod.com>2020-07-09 23:24:57 +0300
committerNiall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) <spamtrap@nedprod.com>2020-07-09 23:24:57 +0300
commit68789e4807fb7a05e610adcde1a0e7f654ce5089 (patch)
tree47e0a6de9aae4ca4e25e63ce39a4152a91965300
parent703b8391f382b8422df1d32f81d458bb25414400 (diff)
Fix excessively strict same file comparison in clone_or_copy().
-rw-r--r--include/llfio/v2.0/algorithm/clone.hpp4
-rw-r--r--include/llfio/v2.0/detail/impl/clone.ipp3
2 files changed, 3 insertions, 4 deletions
diff --git a/include/llfio/v2.0/algorithm/clone.hpp b/include/llfio/v2.0/algorithm/clone.hpp
index 570ef089..9175a93f 100644
--- a/include/llfio/v2.0/algorithm/clone.hpp
+++ b/include/llfio/v2.0/algorithm/clone.hpp
@@ -46,8 +46,8 @@ namespace algorithm
\param force_copy_now Parameter to pass to `file_handle::clone_extents()` to force
extents to be copied now, not copy-on-write lazily later.
\param creation How to create the destination file handle. NOTE that if this
- is NOT `always_new`, if the destination has identical maximum extent and
- timestamps (and permissions on POSIX) to the source, it is NOT copied, and
+ is NOT `always_new`, if the destination has identical maximum extent and last
+ modified timestamp (and permissions on POSIX) to the source, it is NOT copied, and
zero is returned.
\param d Deadline by which to complete the operation.
diff --git a/include/llfio/v2.0/detail/impl/clone.ipp b/include/llfio/v2.0/detail/impl/clone.ipp
index 4ceb58e9..12317038 100644
--- a/include/llfio/v2.0/detail/impl/clone.ipp
+++ b/include/llfio/v2.0/detail/impl/clone.ipp
@@ -53,8 +53,7 @@ namespace algorithm
{
stat_t deststat(nullptr);
OUTCOME_TRY(deststat.fill(r.value()));
- if((stat.st_type == deststat.st_type) && (stat.st_mtim == deststat.st_mtim) && (stat.st_ctim == deststat.st_ctim) &&
- (stat.st_birthtim == deststat.st_birthtim) && (stat.st_size == deststat.st_size)
+ if((stat.st_type == deststat.st_type) && (stat.st_mtim == deststat.st_mtim) && (stat.st_size == deststat.st_size)
#ifndef _WIN32
&& (stat.st_perms == deststat.st_perms) && (stat.st_uid == deststat.st_uid) && (stat.st_gid == deststat.st_gid) && (stat.st_rdev == deststat.st_rdev)
#endif