Skip to content

Commit e863117

Browse files
committed
keep closer to go-source and avoid off-by-one messup
1 parent 5de0089 commit e863117

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

statement.go

+4-4
Original file line numberDiff line numberDiff line change
@@ -148,11 +148,11 @@ func (converter) ConvertValue(v interface{}) (driver.Value, error) {
148148
case reflect.Uint, reflect.Uint8, reflect.Uint16, reflect.Uint32:
149149
return int64(rv.Uint()), nil
150150
case reflect.Uint64:
151-
val := rv.Uint()
152-
if val < (^uint64(0) >> 1) {
153-
return int64(val), nil
151+
u64 := rv.Uint()
152+
if u64 >= 1<<63 {
153+
return fmt.Sprintf("%d", rv.Uint()), nil
154154
}
155-
return fmt.Sprintf("%d", rv.Uint()), nil
155+
return int64(u64), nil
156156
case reflect.Float32, reflect.Float64:
157157
return rv.Float(), nil
158158
}

0 commit comments

Comments
 (0)