]> Cypherpunks repositories - gostls13.git/commitdiff
base64: refactor encoder.Write
authorRui Ueyama <ruiu@google.com>
Tue, 18 Mar 2014 05:26:23 +0000 (16:26 +1100)
committerNigel Tao <nigeltao@golang.org>
Tue, 18 Mar 2014 05:26:23 +0000 (16:26 +1100)
"nn" can never be zero for any input "p", so no check is needed.
This change should improve readability a bit.

LGTM=nigeltao
R=golang-codereviews, bradfitz, nigeltao
CC=golang-codereviews
https://golang.org/cl/76610045

src/pkg/encoding/base64/base64.go

index 85e398fd0b7be3b59e85df6f8a565cb53d0f8e91..0b07e733a0dcfb272dadca815858e5daa995f3bd 100644 (file)
@@ -159,13 +159,11 @@ func (e *encoder) Write(p []byte) (n int, err error) {
                nn := len(e.out) / 4 * 3
                if nn > len(p) {
                        nn = len(p)
+                       nn -= nn % 3
                }
-               nn -= nn % 3
-               if nn > 0 {
-                       e.enc.Encode(e.out[0:], p[0:nn])
-                       if _, e.err = e.w.Write(e.out[0 : nn/3*4]); e.err != nil {
-                               return n, e.err
-                       }
+               e.enc.Encode(e.out[0:], p[0:nn])
+               if _, e.err = e.w.Write(e.out[0 : nn/3*4]); e.err != nil {
+                       return n, e.err
                }
                n += nn
                p = p[nn:]