this repo has no description
2
fork

Configure Feed

Select the types of activity you want to include in your feed.

Fix awaiting_message entries surviving timeout

+5 -3
+5 -3
lib/construct/scheduler.ex
··· 237 237 :noop 238 238 239 239 {_expires, timed_out_pid} -> 240 - {_check_fun, %Resume{} = resume} = Map.fetch!(state.awaiting_message, timed_out_pid) 240 + {{_check_fun, %Resume{} = resume}, awaiting_message} = Map.pop!(state.awaiting_message, timed_out_pid) 241 241 242 242 # Resume the timed out process with a timeout message 243 243 # The process will then call exit(:timeout) (see await_resume/1) 244 244 state = monitor_current(state, resume.pid) 245 245 send resume.pid, {:timeout, resume.ref} 246 246 247 - # Clean up the timeout 248 - state = purge_timeouts(state, timed_out_pid) 247 + # Clean up the timeout and await 248 + state = 249 + %State{state | awaiting_message: awaiting_message} 250 + |> purge_timeouts(timed_out_pid) 249 251 {:performed, state} 250 252 end 251 253 end