Fix the problem, applying invalid steps in callhandler
While it skips calling fallback, it should returns used steps as
zero, but it returns current step used value. It causes duplicate
charges in steps on calling invalid fallback.
@@ -606,7 +606,7 @@ func (h *TransferAndCallHandler) ExecuteAsync(cc CallContext) (err error) {
return scoreresult.OutOfStepError.New("OutOfStepForCall")
}
go func() {
- cc.OnResult(nil, cc.StepUsed(), nil, nil)
+ cc.OnResult(nil, new(big.Int), nil, nil)
}()
return nil
}
