2
0

Fix scanning negative ints into Int64Scanner

This commit is contained in:
Jack Christensen
2022-02-08 14:13:06 -06:00
parent 1334d45d71
commit 0306ce3a19
4 changed files with 8 additions and 4 deletions
+3 -3
View File
@@ -552,7 +552,7 @@ func (scanPlanBinaryInt2ToInt64Scanner) Scan(src []byte, dst interface{}) error
return fmt.Errorf("invalid length for int2: %v", len(src))
}
n := int64(binary.BigEndian.Uint16(src))
n := int64(int16(binary.BigEndian.Uint16(src)))
return s.ScanInt64(Int8{Int: n, Valid: true})
}
@@ -1100,7 +1100,7 @@ func (scanPlanBinaryInt4ToInt64Scanner) Scan(src []byte, dst interface{}) error
return fmt.Errorf("invalid length for int4: %v", len(src))
}
n := int64(binary.BigEndian.Uint32(src))
n := int64(int32(binary.BigEndian.Uint32(src)))
return s.ScanInt64(Int8{Int: n, Valid: true})
}
@@ -1670,7 +1670,7 @@ func (scanPlanBinaryInt8ToInt64Scanner) Scan(src []byte, dst interface{}) error
return fmt.Errorf("invalid length for int8: %v", len(src))
}
n := int64(binary.BigEndian.Uint64(src))
n := int64(int64(binary.BigEndian.Uint64(src)))
return s.ScanInt64(Int8{Int: n, Valid: true})
}