fix regenHandler shutdown.
This fixes a case where queueRegenEvent blocks indefinitely in regenHandler when template generator is shuting down.
This commit is contained in:
parent
e3547d0822
commit
fe0302d8ff
@ -3127,7 +3127,12 @@ func (g *BgBlkTmplGenerator) regenHandler(ctx context.Context) {
|
||||
if err != nil {
|
||||
g.setCurrentTemplate(nil, turUnknown, err)
|
||||
} else {
|
||||
g.queueRegenEvent <- regenEvent{rtBlockConnected, tipBlock}
|
||||
select {
|
||||
case <-ctx.Done():
|
||||
g.wg.Done()
|
||||
return
|
||||
case g.queueRegenEvent <- regenEvent{rtBlockConnected, tipBlock}:
|
||||
}
|
||||
}
|
||||
|
||||
state := makeRegenHandlerState()
|
||||
|
||||
Loading…
Reference in New Issue
Block a user