mirror of
https://github.com/ethereum/go-ethereum.git
synced 2026-08-19 18:32:23 +00:00
swarm/shed: pass a new byte slice copy to index decode functions
This commit is contained in:
parent
67473be38a
commit
2299147176
1 changed files with 4 additions and 2 deletions
|
|
@ -249,11 +249,13 @@ func (f Index) Iterate(fn IndexIterFunc, options *IterateOptions) (err error) {
|
||||||
if !bytes.HasPrefix(key, prefix) {
|
if !bytes.HasPrefix(key, prefix) {
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
keyItem, err := f.decodeKeyFunc(key)
|
// create a copy of key byte slice not to share leveldb underlaying slice array
|
||||||
|
keyItem, err := f.decodeKeyFunc(append([]byte(nil), key...))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
valueItem, err := f.decodeValueFunc(keyItem, it.Value())
|
// create a copy of value byte slice not to share leveldb underlaying slice array
|
||||||
|
valueItem, err := f.decodeValueFunc(keyItem, append([]byte(nil), it.Value()...))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue