소스 검색

* Fix wrong TimeStampToMSecs result on 32-bit. Fixes issue #40522

Michaël Van Canneyt 1 년 전
부모
커밋
ed000e6cd7
1개의 변경된 파일2개의 추가작업 그리고 1개의 파일을 삭제
  1. 2 1
      rtl/objpas/sysutils/dati.inc

+ 2 - 1
rtl/objpas/sysutils/dati.inc

@@ -96,7 +96,8 @@ end;
 
 
 function TimeStampToMSecs(const TimeStamp: TTimeStamp): Int64;
 function TimeStampToMSecs(const TimeStamp: TTimeStamp): Int64;
 begin
 begin
-  result := TimeStamp.Time + timestamp.date * msecsperday;
+  //  Int64() typecast fixes issues 40522 and 40568 on 32-bit.
+  result := TimeStamp.Time + Int64(timestamp.date) * msecsperday;
 end;
 end;
 
 
 Function TryEncodeDate(Year,Month,Day : Word; Out Date : TDateTime) : Boolean;
 Function TryEncodeDate(Year,Month,Day : Word; Out Date : TDateTime) : Boolean;