diff options
author | Silvan Jegen <s.jegen@gmail.com> | 2015-06-14 17:38:09 +0200 |
---|---|---|
committer | Silvan Jegen <s.jegen@gmail.com> | 2015-06-14 17:38:09 +0200 |
commit | 18fef8cc50ed3bae4654b1574e546503b48c1119 (patch) | |
tree | aa9736530e5e8ba4260ba90f2c3bd08e253658fb | |
parent | 4b6c9b539466dbec8b0b8cde1f1e2aa67677f6e9 (diff) |
Change usage of copy()
-rw-r--r-- | unxml.go | 13 |
1 files changed, 5 insertions, 8 deletions
@@ -183,14 +183,11 @@ func (r *ElementReader) Read(out []byte) (int, error) { r.intagtokeep = true raw := r.xr.tokenizer.Raw() //fmt.Printf("TokenRaw: %s\n", raw) - if len(raw) < lenout { - n := copy(out[r.xr.count:], raw) - r.xr.count += n - lenout -= n - } else { - n = copy(out[r.xr.count:], raw[:lenout]) - r.xr.count += n - r.xr.lastread = raw[lenout:] + n := copy(out[r.xr.count:], raw) + r.xr.count += n + lenout -= n + if n < len(raw) { + r.xr.lastread = raw[n:] return r.xr.count, err } } |