diff options
Diffstat (limited to 'src/encoding/csv/reader.go')
| -rw-r--r-- | src/encoding/csv/reader.go | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/encoding/csv/reader.go b/src/encoding/csv/reader.go index d9432954ac..d0a09044fb 100644 --- a/src/encoding/csv/reader.go +++ b/src/encoding/csv/reader.go @@ -228,6 +228,12 @@ func (r *Reader) parseRecord() (fields []string, err error) { } r.r.UnreadRune() + // If FieldsPerRecord is greater then 0 we can assume the final + // length of fields to be equal to FieldsPerRecord. + if r.FieldsPerRecord > 0 { + fields = make([]string, 0, r.FieldsPerRecord) + } + // At this point we have at least one field. for { haveField, delim, err := r.parseField() |
