mirror of
https://github.com/fluencelabs/tendermint
synced 2025-05-29 06:01:21 +00:00
avoid infinite recursion by proxying to iterator
``` WARNING: staticcheck, gosimple and unused are all set, using megacheck instead db/go_level_db.go:126:15⚠️ infinite recursive call (SA5007) (megacheck) db/go_level_db.go:135:17⚠️ infinite recursive call (SA5007) (megacheck) db/mem_db.go:106:2⚠️ redundant return statement (S1023) (megacheck) ``` https://circleci.com/gh/tendermint/tmlibs/220 Also remove unnecessary return statement
This commit is contained in:
parent
cd2ad19db4
commit
0b22b27bbb
@ -118,12 +118,12 @@ func (db *GoLevelDB) Stats() map[string]string {
|
|||||||
}
|
}
|
||||||
|
|
||||||
type goLevelDBIterator struct {
|
type goLevelDBIterator struct {
|
||||||
iterator.Iterator
|
source iterator.Iterator
|
||||||
}
|
}
|
||||||
|
|
||||||
// Key returns a copy of the current key.
|
// Key returns a copy of the current key.
|
||||||
func (it *goLevelDBIterator) Key() []byte {
|
func (it *goLevelDBIterator) Key() []byte {
|
||||||
key := it.Key()
|
key := it.source.Key()
|
||||||
k := make([]byte, len(key))
|
k := make([]byte, len(key))
|
||||||
copy(k, key)
|
copy(k, key)
|
||||||
|
|
||||||
@ -132,13 +132,25 @@ func (it *goLevelDBIterator) Key() []byte {
|
|||||||
|
|
||||||
// Value returns a copy of the current value.
|
// Value returns a copy of the current value.
|
||||||
func (it *goLevelDBIterator) Value() []byte {
|
func (it *goLevelDBIterator) Value() []byte {
|
||||||
val := it.Value()
|
val := it.source.Value()
|
||||||
v := make([]byte, len(val))
|
v := make([]byte, len(val))
|
||||||
copy(v, val)
|
copy(v, val)
|
||||||
|
|
||||||
return v
|
return v
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (it *goLevelDBIterator) Error() error {
|
||||||
|
return it.source.Error()
|
||||||
|
}
|
||||||
|
|
||||||
|
func (it *goLevelDBIterator) Next() bool {
|
||||||
|
return it.source.Next()
|
||||||
|
}
|
||||||
|
|
||||||
|
func (it *goLevelDBIterator) Release() {
|
||||||
|
it.source.Release()
|
||||||
|
}
|
||||||
|
|
||||||
func (db *GoLevelDB) Iterator() Iterator {
|
func (db *GoLevelDB) Iterator() Iterator {
|
||||||
return &goLevelDBIterator{db.db.NewIterator(nil, nil)}
|
return &goLevelDBIterator{db.db.NewIterator(nil, nil)}
|
||||||
}
|
}
|
||||||
|
@ -103,7 +103,6 @@ func (it *memDBIterator) Value() []byte {
|
|||||||
func (it *memDBIterator) Release() {
|
func (it *memDBIterator) Release() {
|
||||||
it.db = nil
|
it.db = nil
|
||||||
it.keys = nil
|
it.keys = nil
|
||||||
return
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func (it *memDBIterator) Error() error {
|
func (it *memDBIterator) Error() error {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user