mirror of
https://github.com/nspcc-dev/neo-go.git
synced 2024-11-26 09:42:22 +00:00
Merge pull request #2235 from nspcc-dev/mpt/empty-batch
core: handle empty MPT batch properly
This commit is contained in:
commit
ec47491d4d
2 changed files with 5 additions and 0 deletions
|
@ -43,6 +43,9 @@ func (b *Batch) Add(key []byte, value []byte) {
|
|||
// and won't strip the resulting branch node.
|
||||
// However it is used mostly after the block processing to update MPT and error is not expected.
|
||||
func (t *Trie) PutBatch(b Batch) (int, error) {
|
||||
if len(b.kv) == 0 {
|
||||
return 0, nil
|
||||
}
|
||||
r, n, err := t.putBatch(b.kv)
|
||||
t.root = r
|
||||
return n, err
|
||||
|
|
|
@ -329,6 +329,8 @@ func TestTrie_PutBatch(t *testing.T) {
|
|||
|
||||
ps = pairs{[2][]byte{{4}, nil}}
|
||||
testPut(t, ps, tr1, tr2)
|
||||
|
||||
testPut(t, pairs{}, tr1, tr2)
|
||||
}
|
||||
|
||||
var _ = printNode
|
||||
|
|
Loading…
Reference in a new issue