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) ...@@ -129,7 +129,7 @@ func (u *Unfreeze) newEntity(payload *pty.UnfreezeCreate, tx *types.Transaction)
if unfreeze.StartTime == 0 { if unfreeze.StartTime == 0 {
unfreeze.StartTime = u.GetBlockTime() unfreeze.StartTime = u.GetBlockTime()
} }
means, err := newMeans(payload.Means) means, err := newMeans(payload.Means, u.GetHeight())
if err != nil { if err != nil {
return nil, err return nil, err
...@@ -172,7 +172,7 @@ func getUnfreezeLog(prev, cur *pty.Unfreeze) *types.ReceiptLog { ...@@ -172,7 +172,7 @@ func getUnfreezeLog(prev, cur *pty.Unfreeze) *types.ReceiptLog {
// 提取解冻币 // 提取解冻币
func (u *Unfreeze) withdraw(unfreeze *pty.Unfreeze) (int64, *types.Receipt, error) { 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 { if err != nil {
return 0, nil, err return 0, nil, err
...@@ -203,8 +203,26 @@ func (u *Unfreeze) terminator(unfreeze *pty.Unfreeze) (int64, *types.Receipt, er ...@@ -203,8 +203,26 @@ func (u *Unfreeze) terminator(unfreeze *pty.Unfreeze) (int64, *types.Receipt, er
} }
unfreezeOld := *unfreeze unfreezeOld := *unfreeze
amount := unfreeze.Remaining amount := int64(0)
unfreeze.Remaining = 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) receiptLog := getUnfreezeLog(&unfreezeOld, unfreeze)
k := []byte(unfreeze.UnfreezeID) 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