small fixes
This commit is contained in:
parent
1708898c2d
commit
52f004dad8
2
Makefile
2
Makefile
@ -25,4 +25,4 @@ bench: $(sources)
|
|||||||
|
|
||||||
clean:
|
clean:
|
||||||
go clean
|
go clean
|
||||||
rm .cover
|
rm -f .cover
|
||||||
|
|||||||
12
content.go
12
content.go
@ -2,6 +2,7 @@ package buffer
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"errors"
|
"errors"
|
||||||
|
"fmt"
|
||||||
"io"
|
"io"
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -56,6 +57,17 @@ func (c *content) writeTo() {
|
|||||||
r: c.w,
|
r: c.w,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
defer func() {
|
||||||
|
r := recover()
|
||||||
|
if r == nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
err := fmt.Errorf("panic provided WriterTo: %v", r)
|
||||||
|
w.w <- syncMessage{err: err}
|
||||||
|
close(w.w)
|
||||||
|
}()
|
||||||
|
|
||||||
var sm syncMessage
|
var sm syncMessage
|
||||||
_, err := c.wrt.WriteTo(w)
|
_, err := c.wrt.WriteTo(w)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|||||||
12
pool.go
12
pool.go
@ -1,6 +1,9 @@
|
|||||||
package buffer
|
package buffer
|
||||||
|
|
||||||
import "sync"
|
import (
|
||||||
|
"errors"
|
||||||
|
"sync"
|
||||||
|
)
|
||||||
|
|
||||||
type noPool struct {
|
type noPool struct {
|
||||||
allocSize int
|
allocSize int
|
||||||
@ -28,7 +31,12 @@ func (noPool) Put([]byte) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (p *pool) Get() ([]byte, error) {
|
func (p *pool) Get() ([]byte, error) {
|
||||||
return p.sp.Get().([]byte), nil
|
b, ok := p.sp.Get().([]byte)
|
||||||
|
if !ok {
|
||||||
|
return nil, errors.New("invalid resource received from pool")
|
||||||
|
}
|
||||||
|
|
||||||
|
return b, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (p *pool) Put(b []byte) {
|
func (p *pool) Put(b []byte) {
|
||||||
|
|||||||
@ -410,17 +410,17 @@ func (r *reader) readUTF8(max int) ([]rune, int, error) {
|
|||||||
break
|
break
|
||||||
}
|
}
|
||||||
|
|
||||||
r, s := utf8.DecodeRune(b)
|
rn, s := utf8.DecodeRune(b)
|
||||||
if r == utf8.RuneError && s == 1 && len(runes) == 0 {
|
if rn == utf8.RuneError && s == 1 && len(runes) == 0 {
|
||||||
n = 1
|
n = 1
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
|
|
||||||
if r == utf8.RuneError && s == 1 {
|
if rn == utf8.RuneError && s == 1 {
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
|
|
||||||
runes = append(runes, r)
|
runes = append(runes, rn)
|
||||||
n += s
|
n += s
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user