Ver Fonte

Bug fix: TDateTime/float equality comparison is not reliable (particularly with Clang)

Not sure if the problem can actually occur with classic compiler, so not logging this publicly

Source commit: b67371b1deed393e1abf636504ae26bb786314f3
Martin Prikryl há 1 mês atrás
pai
commit
e2c5a499fa
1 ficheiros alterados com 2 adições e 1 exclusões
  1. 2 1
      source/core/FtpFileSystem.cpp

+ 2 - 1
source/core/FtpFileSystem.cpp

@@ -2165,7 +2165,8 @@ bool __fastcall TFTPFileSystem::LookupUploadModificationTime(
     {
       TDateTime UploadModification = Iterator->second;
       TDateTime UploadModificationReduced = ReduceDateTimePrecision(UploadModification, ModificationFmt);
-      if (UploadModificationReduced == Modification)
+      // Though we might use seconds (or even milliseconds) precision comparison here, not FAT precision
+      if (CompareFileTime(UploadModificationReduced, Modification) == 0)
       {
         if ((FTerminal->Configuration->ActualLogProtocol >= 2))
         {