summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSilvan Jegen <s.jegen@gmail.com>2015-06-14 17:41:45 +0200
committerSilvan Jegen <s.jegen@gmail.com>2015-06-14 17:41:45 +0200
commit04425938df3790177e6b78b9803396cf928d5757 (patch)
tree98e0de911ca8921ea3835f36fe4b36f7a6b92b38
parent18fef8cc50ed3bae4654b1574e546503b48c1119 (diff)
Change copy() usage
-rw-r--r--unxml.go13
1 files changed, 5 insertions, 8 deletions
diff --git a/unxml.go b/unxml.go
index f266b1f..a9f8941 100644
--- a/unxml.go
+++ b/unxml.go
@@ -204,14 +204,11 @@ func (r *ElementReader) Read(out []byte) (int, error) {
r.tagsinstack[string(tn)]--
}
raw := r.xr.tokenizer.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
}
}