浏览代码

* Fix bug #27832

git-svn-id: trunk@30557 -
michael 10 年之前
父节点
当前提交
56715d5d00
共有 1 个文件被更改,包括 6 次插入1 次删除
  1. 6 1
      rtl/objpas/sysutils/dati.inc

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

@@ -61,8 +61,13 @@ begin
     D:=D-0.5
     D:=D-0.5
   else
   else
     D:=D+0.5;
     D:=D+0.5;
-  result.Time := Abs(Trunc(D)) Mod MSecsPerDay;
+  Result.Time := Abs(Trunc(D)) Mod MSecsPerDay;
   result.Date := DateDelta + Trunc(D) div MSecsPerDay;
   result.Date := DateDelta + Trunc(D) div MSecsPerDay;
+  if D<0 then
+    begin
+    Result.Time:=MSecsPerDay-Result.time;
+    Result.Date:=Result.Date-1;
+    end;
 end;
 end;
 
 
 {   TimeStampToDateTime converts TimeStamp to a TDateTime value   }
 {   TimeStampToDateTime converts TimeStamp to a TDateTime value   }