[release 1.4.12] core/state: Fix memory expansion bug by not copying clean objects

(cherry picked from commit 581b320b9d)
This commit is contained in:
Nick Johnson
2016-09-19 07:56:23 +08:00
committed by Péter Szilágyi
parent 99a0c76435
commit e44b2dc881
3 changed files with 8 additions and 5 deletions

View File

@ -149,10 +149,11 @@ func TestSnapshot2(t *testing.T) {
so0.balance = big.NewInt(42)
so0.nonce = 43
so0.SetCode([]byte{'c', 'a', 'f', 'e'})
so0.remove = true
so0.remove = false
so0.deleted = false
so0.dirty = false
so0.dirty = true
state.SetStateObject(so0)
state.Commit()
// and one with deleted == true
so1 := state.GetStateObject(stateobjaddr1)
@ -173,6 +174,7 @@ func TestSnapshot2(t *testing.T) {
state.Set(snapshot)
so0Restored := state.GetStateObject(stateobjaddr0)
so0Restored.GetState(storageaddr)
so1Restored := state.GetStateObject(stateobjaddr1)
// non-deleted is equal (restored)
compareStateObjects(so0Restored, so0, t)