aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRob Pike <r@golang.org>2010-01-05 11:33:06 +1100
committerRob Pike <r@golang.org>2010-01-05 11:33:06 +1100
commita0ee18bdd5bcb91dce0e909bcebad3c0010ef83f (patch)
tree5f0ad60a5485d096d8900dcae496aab22f750d79
parentf221067fe875f67c5fc0dc08e5258ecedb04d16d (diff)
downloadgo-a0ee18bdd5bcb91dce0e909bcebad3c0010ef83f.tar.gz
go-a0ee18bdd5bcb91dce0e909bcebad3c0010ef83f.zip
Check for errors when writing fields of a struct.
R=rsc CC=golang-dev, jack.palevich https://golang.org/cl/183109
-rw-r--r--src/pkg/json/struct.go6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/pkg/json/struct.go b/src/pkg/json/struct.go
index 4f2a1782cc..7b50301e4f 100644
--- a/src/pkg/json/struct.go
+++ b/src/pkg/json/struct.go
@@ -366,7 +366,11 @@ func writeStruct(w io.Writer, val *reflect.StructValue) os.Error {
for i := 0; i < val.NumField(); i++ {
fieldValue := val.Field(i)
fmt.Fprintf(w, "%q:", typ.Field(i).Name)
- writeValue(w, fieldValue)
+
+ if err := writeValue(w, fieldValue); err != nil {
+ return err
+ }
+
if i < val.NumField()-1 {
fmt.Fprint(w, ",")
}