This does not appear to be a concurrency bug though?
*should clarify, Node.js, PHP, and Haskell did ship patches. Python, Ruby, Erlang, and Go opted for documentation updates; Java went "won't fix."
This reads more like an overly broad transition in a deterministic state machine. The fix was to split up a bad transition to shutdown.
Rust has never promised to solve race conditions as a whole.