]> Cypherpunks repositories - gostls13.git/commitdiff
clean up EOF
authorRob Pike <r@golang.org>
Wed, 29 Jul 2009 22:24:42 +0000 (15:24 -0700)
committerRob Pike <r@golang.org>
Wed, 29 Jul 2009 22:24:42 +0000 (15:24 -0700)
R=rsc
DELTA=5  (0 added, 1 deleted, 4 changed)
OCL=32465
CL=32467

src/pkg/gob/decoder.go
src/pkg/gob/encoder_test.go

index b4c0acdfa75594d9bf8e9fa7b21eaba64f6082d8..7e0c939300cb53ee4a6b835c4ce66a88a59d67a2 100644 (file)
@@ -79,10 +79,9 @@ func (dec *Decoder) Decode(e interface{}) os.Error {
                var n int;
                n, dec.state.err = io.ReadFull(dec.r, dec.buf[0:nbytes]);
                if dec.state.err != nil {
-                       break;
-               }
-               if n < int(nbytes) {
-                       dec.state.err = io.ErrUnexpectedEOF;
+                       if dec.state.err ==  os.EOF {
+                               dec.state.err = io.ErrUnexpectedEOF;
+                       }
                        break;
                }
 
index 06420c08e3e556f038b20c3d971b7aadbe52c3cc..e1c64e4dd70e034f08f761808ffe2037baff4667 100644 (file)
@@ -240,7 +240,7 @@ func corruptDataCheck(s string, err os.Error, t *testing.T) {
 
 // Check that we survive bad data.
 func TestBadData(t *testing.T) {
-       corruptDataCheck("\x01\x01\x01", os.EOF, t);
+       corruptDataCheck("", os.EOF, t);
        corruptDataCheck("\x7Fhi", io.ErrUnexpectedEOF, t);
        corruptDataCheck("\x03now is the time for all good men", errBadType, t);
 }