소스 검색

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 1 개월 전
부모
커밋
e2c5a499fa
1개의 변경된 파일2개의 추가작업 그리고 1개의 파일을 삭제
  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))
         {