mirror of https://github.com/golang/go.git
encoding/base64, encoding/base32: add doc details to DecodeString and AppendDecode
Currently only Encoding.Decode has the information that `\r` and `\n` are ignored. However, this also applies to the other decoding methods. Since this is not intuitive behavior, we should add this information to the other impacted methods. Change-Id: I6f71fe1f4280fe75f2694a3cc1b759652eb8b8c1 Reviewed-on: https://go-review.googlesource.com/c/go/+/634215 Reviewed-by: Ian Lance Taylor <iant@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Chris Ingram <chrisingram@google.com> Auto-Submit: Ian Lance Taylor <iant@google.com> Reviewed-by: Truc Le <trucleduc@google.com>
This commit is contained in:
parent
f0b8d79c96
commit
35caf4130e
|
|
@ -401,6 +401,7 @@ func (enc *Encoding) Decode(dst, src []byte) (n int, err error) {
|
|||
// AppendDecode appends the base32 decoded src to dst
|
||||
// and returns the extended buffer.
|
||||
// If the input is malformed, it returns the partially decoded src and an error.
|
||||
// New line characters (\r and \n) are ignored.
|
||||
func (enc *Encoding) AppendDecode(dst, src []byte) ([]byte, error) {
|
||||
// Compute the output size without padding to avoid over allocating.
|
||||
n := len(src)
|
||||
|
|
@ -415,6 +416,8 @@ func (enc *Encoding) AppendDecode(dst, src []byte) ([]byte, error) {
|
|||
}
|
||||
|
||||
// DecodeString returns the bytes represented by the base32 string s.
|
||||
// If the input is malformed, it returns the partially decoded data and
|
||||
// [CorruptInputError]. New line characters (\r and \n) are ignored.
|
||||
func (enc *Encoding) DecodeString(s string) ([]byte, error) {
|
||||
buf := []byte(s)
|
||||
l := stripNewlines(buf, buf)
|
||||
|
|
|
|||
|
|
@ -409,6 +409,7 @@ func (enc *Encoding) decodeQuantum(dst, src []byte, si int) (nsi, n int, err err
|
|||
// AppendDecode appends the base64 decoded src to dst
|
||||
// and returns the extended buffer.
|
||||
// If the input is malformed, it returns the partially decoded src and an error.
|
||||
// New line characters (\r and \n) are ignored.
|
||||
func (enc *Encoding) AppendDecode(dst, src []byte) ([]byte, error) {
|
||||
// Compute the output size without padding to avoid over allocating.
|
||||
n := len(src)
|
||||
|
|
@ -423,6 +424,8 @@ func (enc *Encoding) AppendDecode(dst, src []byte) ([]byte, error) {
|
|||
}
|
||||
|
||||
// DecodeString returns the bytes represented by the base64 string s.
|
||||
// If the input is malformed, it returns the partially decoded data and
|
||||
// [CorruptInputError]. New line characters (\r and \n) are ignored.
|
||||
func (enc *Encoding) DecodeString(s string) ([]byte, error) {
|
||||
dbuf := make([]byte, enc.DecodedLen(len(s)))
|
||||
n, err := enc.Decode(dbuf, []byte(s))
|
||||
|
|
|
|||
Loading…
Reference in New Issue