b8e1341142
Motivation: Since most futures in Netty are of the `Void` type, methods like `getNow()` and `cause()` cannot distinguish if the future has finished or not. This can cause data race bugs which, in the case of `Void` futures, can be silent. Modification: The methods `getNow()` and `cause()` now throw an `IllegalStateException` if the future has not yet completed. Most use of these methods are inside listeners, and so are not impacted. One place in `AbstractBootstrap` was doing a racy read and has been adjusted. Result: Data race bugs around `getNow()` and `cause()` are no longer silent. |
||
---|---|---|
.. | ||
src | ||
pom.xml |