From e28459e9d1773a5b033bafca691a655e5a1f24cd Mon Sep 17 00:00:00 2001 From: Jim Tsao Date: Fri, 8 Oct 2021 14:45:10 +0200 Subject: [PATCH] Fix int64 overflow error --- timestamptz.go | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/timestamptz.go b/timestamptz.go index e0743060..299a8668 100644 --- a/timestamptz.go +++ b/timestamptz.go @@ -148,8 +148,10 @@ func (dst *Timestamptz) DecodeBinary(ci *ConnInfo, src []byte) error { case negativeInfinityMicrosecondOffset: *dst = Timestamptz{Status: Present, InfinityModifier: -Infinity} default: - microsecSinceUnixEpoch := microsecFromUnixEpochToY2K + microsecSinceY2K - tim := time.Unix(microsecSinceUnixEpoch/1000000, (microsecSinceUnixEpoch%1000000)*1000) + tim := time.Unix( + microsecFromUnixEpochToY2K/1000000+microsecSinceY2K/1000000, + (microsecFromUnixEpochToY2K%1000000*1000)+(microsecSinceY2K%1000000*1000), + ) *dst = Timestamptz{Time: tim, Status: Present} }