Commit 8200f50e authored by linj's avatar linj Committed by vipwzw

call new means

parent e0ef5901
......@@ -129,7 +129,7 @@ func (u *Unfreeze) newEntity(payload *pty.UnfreezeCreate, tx *types.Transaction)
if unfreeze.StartTime == 0 {
unfreeze.StartTime = u.GetBlockTime()
}
means, err := newMeans(payload.Means)
means, err := newMeans(payload.Means, u.GetHeight())
if err != nil {
return nil, err
......@@ -172,7 +172,7 @@ func getUnfreezeLog(prev, cur *pty.Unfreeze) *types.ReceiptLog {
// 提取解冻币
func (u *Unfreeze) withdraw(unfreeze *pty.Unfreeze) (int64, *types.Receipt, error) {
means, err := newMeans(unfreeze.Means)
means, err := newMeans(unfreeze.Means, u.GetHeight())
if err != nil {
return 0, nil, err
......@@ -203,8 +203,26 @@ func (u *Unfreeze) terminator(unfreeze *pty.Unfreeze) (int64, *types.Receipt, er
}
unfreezeOld := *unfreeze
amount := unfreeze.Remaining
unfreeze.Remaining = 0
amount := int64(0)
if types.IsDappFork(u.GetHeight(), pty.UnfreezeX, "ForkTerminatePart") {
if unfreeze.Terminated {
return 0, nil, pty.ErrTerminated
}
m, err := newMeans(unfreeze.Means, u.GetHeight())
if err != nil {
return 0, nil, err
}
frozen, err := m.calcFrozen(unfreeze, u.GetBlockTime())
if err != nil {
return 0, nil, err
}
amount = frozen
unfreeze.Remaining = unfreeze.Remaining - amount
unfreeze.Terminated = true
} else {
amount = unfreeze.Remaining
unfreeze.Remaining = 0
}
receiptLog := getUnfreezeLog(&unfreezeOld, unfreeze)
k := []byte(unfreeze.UnfreezeID)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment