Added/changed logging
This commit is contained in:
parent
34da3b4fa8
commit
7a410643ac
@ -143,6 +143,7 @@ func (self *StateObject) getStorage(k []byte) *ethutil.Value {
|
|||||||
|
|
||||||
func (self *StateObject) setStorage(k []byte, value *ethutil.Value) {
|
func (self *StateObject) setStorage(k []byte, value *ethutil.Value) {
|
||||||
key := ethutil.LeftPadBytes(k, 32)
|
key := ethutil.LeftPadBytes(k, 32)
|
||||||
|
//fmt.Printf("%x %v\n", key, value)
|
||||||
self.storage[string(key)] = value.Copy()
|
self.storage[string(key)] = value.Copy()
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -158,9 +159,9 @@ func (self *StateObject) Sync() {
|
|||||||
|
|
||||||
valid, t2 := ethtrie.ParanoiaCheck(self.state.trie)
|
valid, t2 := ethtrie.ParanoiaCheck(self.state.trie)
|
||||||
if !valid {
|
if !valid {
|
||||||
self.state.trie = t2
|
statelogger.Infof("Warn: PARANOIA: Different state storage root during copy %x vs %x\n", self.state.trie.Root, t2.Root)
|
||||||
|
|
||||||
statelogger.Infoln("Warn: PARANOIA: Different state storage root during copy")
|
self.state.trie = t2
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -155,6 +155,15 @@ func (vm *Vm) RunClosure(closure *Closure) (ret []byte, err error) {
|
|||||||
// XXX Leave this Println intact. Don't change this to the log system.
|
// XXX Leave this Println intact. Don't change this to the log system.
|
||||||
// Used for creating diffs between implementations
|
// Used for creating diffs between implementations
|
||||||
if vm.logTy == LogTyDiff {
|
if vm.logTy == LogTyDiff {
|
||||||
|
switch op {
|
||||||
|
case STOP, RETURN, SUICIDE:
|
||||||
|
closure.object.Sync()
|
||||||
|
closure.object.state.EachStorage(func(key string, value *ethutil.Value) {
|
||||||
|
value.Decode()
|
||||||
|
fmt.Printf("%x %x\n", new(big.Int).SetBytes([]byte(key)).Bytes(), value.Bytes())
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
b := pc.Bytes()
|
b := pc.Bytes()
|
||||||
if len(b) == 0 {
|
if len(b) == 0 {
|
||||||
b = []byte{0}
|
b = []byte{0}
|
||||||
@ -184,7 +193,6 @@ func (vm *Vm) RunClosure(closure *Closure) (ret []byte, err error) {
|
|||||||
var mult *big.Int
|
var mult *big.Int
|
||||||
y, x := stack.Peekn()
|
y, x := stack.Peekn()
|
||||||
val := closure.GetStorage(x)
|
val := closure.GetStorage(x)
|
||||||
//if val.IsEmpty() && len(y.Bytes()) > 0 {
|
|
||||||
if val.BigInt().Cmp(ethutil.Big0) == 0 && len(y.Bytes()) > 0 {
|
if val.BigInt().Cmp(ethutil.Big0) == 0 && len(y.Bytes()) > 0 {
|
||||||
mult = ethutil.Big2
|
mult = ethutil.Big2
|
||||||
} else if !val.IsEmpty() && len(y.Bytes()) == 0 {
|
} else if !val.IsEmpty() && len(y.Bytes()) == 0 {
|
||||||
|
Loading…
Reference in New Issue
Block a user