File tree Expand file tree Collapse file tree 5 files changed +58
-21
lines changed Expand file tree Collapse file tree 5 files changed +58
-21
lines changed Original file line number Diff line number Diff line change @@ -295,17 +295,29 @@ func (kpr *Keyper) processInputs(ctx context.Context) error {
295295 }
296296}
297297
298- func (kpr * Keyper ) channelNewBlock (_ context.Context , ev * syncevent.LatestBlock ) error {
299- kpr .newBlocks <- ev
300- return nil
298+ func (kpr * Keyper ) channelNewBlock (ctx context.Context , ev * syncevent.LatestBlock ) error {
299+ select {
300+ case kpr .newBlocks <- ev :
301+ return nil
302+ case <- ctx .Done ():
303+ return ctx .Err ()
304+ }
301305}
302306
303- func (kpr * Keyper ) channelNewKeyperSet (_ context.Context , ev * syncevent.KeyperSet ) error {
304- kpr .newKeyperSets <- ev
305- return nil
307+ func (kpr * Keyper ) channelNewKeyperSet (ctx context.Context , ev * syncevent.KeyperSet ) error {
308+ select {
309+ case kpr .newKeyperSets <- ev :
310+ return nil
311+ case <- ctx .Done ():
312+ return ctx .Err ()
313+ }
306314}
307315
308- func (kpr * Keyper ) channelNewEonPublicKey (_ context.Context , key keyper.EonPublicKey ) error {
309- kpr .newEonPublicKeys <- key
310- return nil
316+ func (kpr * Keyper ) channelNewEonPublicKey (ctx context.Context , key keyper.EonPublicKey ) error {
317+ select {
318+ case kpr .newEonPublicKeys <- key :
319+ return nil
320+ case <- ctx .Done ():
321+ return ctx .Err ()
322+ }
311323}
Original file line number Diff line number Diff line change @@ -266,7 +266,12 @@ func (kpr *Keyper) triggerDecryption(
266266 Int ("num-identities" , len (trigger .IdentityPreimages )).
267267 Int64 ("tx-pointer" , txPointer ).
268268 Msg ("sending decryption trigger" )
269- kpr .decryptionTriggerChannel <- event
269+
270+ select {
271+ case kpr .decryptionTriggerChannel <- event :
272+ case <- ctx .Done ():
273+ return ctx .Err ()
274+ }
270275
271276 return nil
272277}
Original file line number Diff line number Diff line change @@ -274,17 +274,29 @@ func (kpr *Keyper) processInputs(ctx context.Context) error {
274274 }
275275}
276276
277- func (kpr * Keyper ) channelNewEonPublicKey (_ context.Context , key keyper.EonPublicKey ) error {
278- kpr .newEonPublicKeys <- key
279- return nil
277+ func (kpr * Keyper ) channelNewEonPublicKey (ctx context.Context , key keyper.EonPublicKey ) error {
278+ select {
279+ case kpr .newEonPublicKeys <- key :
280+ return nil
281+ case <- ctx .Done ():
282+ return ctx .Err ()
283+ }
280284}
281285
282- func (kpr * Keyper ) channelNewBlock (_ context.Context , ev * syncevent.LatestBlock ) error {
283- kpr .newBlocks <- ev
284- return nil
286+ func (kpr * Keyper ) channelNewBlock (ctx context.Context , ev * syncevent.LatestBlock ) error {
287+ select {
288+ case kpr .newBlocks <- ev :
289+ return nil
290+ case <- ctx .Done ():
291+ return ctx .Err ()
292+ }
285293}
286294
287- func (kpr * Keyper ) channelNewKeyperSet (_ context.Context , ev * syncevent.KeyperSet ) error {
288- kpr .newKeyperSets <- ev
289- return nil
295+ func (kpr * Keyper ) channelNewKeyperSet (ctx context.Context , ev * syncevent.KeyperSet ) error {
296+ select {
297+ case kpr .newKeyperSets <- ev :
298+ return nil
299+ case <- ctx .Done ():
300+ return ctx .Err ()
301+ }
290302}
Original file line number Diff line number Diff line change @@ -12,7 +12,11 @@ func Forward[T any](ctx context.Context,
1212 if ! ok {
1313 return nil
1414 }
15- send <- val
15+ select {
16+ case send <- val :
17+ case <- ctx .Done ():
18+ return ctx .Err ()
19+ }
1620 case <- ctx .Done ():
1721 return ctx .Err ()
1822 }
Original file line number Diff line number Diff line change @@ -92,7 +92,11 @@ func (t *SlotTicker) run(ctx context.Context) error {
9292
9393 timeToNextSlot := nextTickTime .Sub (now )
9494 timer .Reset (timeToNextSlot )
95- <- timer .C
95+ select {
96+ case <- timer .C :
97+ case <- ctx .Done ():
98+ return ctx .Err ()
99+ }
96100
97101 if err := t .tick (ctx , nextSlotNumber ); err != nil {
98102 return err
You can’t perform that action at this time.
0 commit comments