diff options
Diffstat (limited to 'libgo/go/mime/multipart')
-rw-r--r-- | libgo/go/mime/multipart/formdata.go | 4 | ||||
-rw-r--r-- | libgo/go/mime/multipart/multipart.go | 7 | ||||
-rw-r--r-- | libgo/go/mime/multipart/writer.go | 6 |
3 files changed, 9 insertions, 8 deletions
diff --git a/libgo/go/mime/multipart/formdata.go b/libgo/go/mime/multipart/formdata.go index 91404d6f41c..d114bfa9b43 100644 --- a/libgo/go/mime/multipart/formdata.go +++ b/libgo/go/mime/multipart/formdata.go @@ -47,7 +47,7 @@ func (r *Reader) ReadForm(maxMemory int64) (f *Form, err os.Error) { if filename == "" { // value, store as string in memory - n, err := io.Copyn(&b, p, maxValueBytes) + n, err := io.CopyN(&b, p, maxValueBytes) if err != nil && err != os.EOF { return nil, err } @@ -64,7 +64,7 @@ func (r *Reader) ReadForm(maxMemory int64) (f *Form, err os.Error) { Filename: filename, Header: p.Header, } - n, err := io.Copyn(&b, p, maxMemory+1) + n, err := io.CopyN(&b, p, maxMemory+1) if err != nil && err != os.EOF { return nil, err } diff --git a/libgo/go/mime/multipart/multipart.go b/libgo/go/mime/multipart/multipart.go index 2533bd337dc..d36e9e91b8f 100644 --- a/libgo/go/mime/multipart/multipart.go +++ b/libgo/go/mime/multipart/multipart.go @@ -69,8 +69,9 @@ func (p *Part) FileName() string { func (p *Part) parseContentDisposition() { v := p.Header.Get("Content-Disposition") - p.disposition, p.dispositionParams = mime.ParseMediaType(v) - if p.dispositionParams == nil { + var err os.Error + p.disposition, p.dispositionParams, err = mime.ParseMediaType(v) + if err != nil { p.dispositionParams = emptyParams } } @@ -145,7 +146,7 @@ func (bp *Part) Read(p []byte) (n int, err os.Error) { return 0, io.ErrUnexpectedEOF } if nCopy > 0 { - if _, err := io.Copyn(bp.buffer, bp.mr.bufReader, int64(nCopy)); err != nil { + if _, err := io.CopyN(bp.buffer, bp.mr.bufReader, int64(nCopy)); err != nil { return 0, err } } diff --git a/libgo/go/mime/multipart/writer.go b/libgo/go/mime/multipart/writer.go index 97a8897b299..1bff02fa2a0 100644 --- a/libgo/go/mime/multipart/writer.go +++ b/libgo/go/mime/multipart/writer.go @@ -85,10 +85,10 @@ func (w *Writer) CreatePart(header textproto.MIMEHeader) (io.Writer, os.Error) { return p, nil } +var quoteEscaper = strings.NewReplacer("\\", "\\\\", `"`, "\\\"") + func escapeQuotes(s string) string { - s = strings.Replace(s, "\\", "\\\\", -1) - s = strings.Replace(s, "\"", "\\\"", -1) - return s + return quoteEscaper.Replace(s) } // CreateFormFile is a convenience wrapper around CreatePart. It creates |