title: Why do I get a result many thousands of years in the future when I call UnixToDateTime?
body: <p>I have the following timestamp: <code>1444288186967</code>.</p>
  
  <p>When I put that in a <a href="http://www.epochconverter.com/#tools" rel="nofollow noreferrer">Epoch Converter</a>, I get correctly <strong>08 Oct 2015 07:09:46</strong> as result.</p>
  
  <p>However, when I use (as mentioned in <a href="https://stackoverflow.com/questions/4420188/how-to-format-a-unix-timestamp-in-delphi">another post</a>) the <code>function UnixToDateTime(const AValue: Int64): TDateTime</code> I get <strong>02 Sep 47737 11:02:47</strong>. Strange, isn't it?</p>
  
  <p>My code (using TMS Aurelius)</p>
  
  <pre><code>Person.EndDate.Value := UnixToDateTime(FHit.TimestampUntil);
  </code></pre>
  
  <p>Where <code>FHit.TimestampUntil</code> is an <code>Int64</code> as the <code>UnixToDateTime</code> function expects.</p>
  
  <p>The <code>Person.EndDate.Value</code> is a TMS Aurelius nullable <code>TDateTime</code>.</p>
  
  <p>How is it possible that I get such date as result?</p>