diff --git a/common/varbin/data.go b/common/varbin/data.go index 4c0960de..f2ff78d7 100644 --- a/common/varbin/data.go +++ b/common/varbin/data.go @@ -106,7 +106,7 @@ func read(r Reader, order binary.ByteOrder, data reflect.Value, isArrayMapValue } case reflect.Array: arrayLen := data.Len() - itemSize := data.Type().Elem().Len() + itemSize := int(data.Type().Elem().Size()) if itemSize > 0 { buf := make([]byte, itemSize*arrayLen) _, err := io.ReadFull(r, buf) @@ -393,7 +393,7 @@ func intItemBaseDataSize(data reflect.Value) int { reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64, reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64, reflect.Float32, reflect.Float64, reflect.Complex64, reflect.Complex128: - return itemType.Len() + return int(itemType.Size()) default: return -1 }