We didn't handle that befoe, thus the NPE described in the issue. Regarding whether or not allowing a null value there, I'd say returning null in our interfaces is ambiguous in many cases. Does a null exit code properly define what happened? There are many chances the value could be left null unintentionally, just by not setting it in some execution path.
Having the constructor set a -1 (or any other negative number) value if the value is null does not fix but mitigate the problem: users will know *someone* explicitly handled that and put there a value that has some meaning. WDYT? > Also no one expects a exitStatus to be null (it's kind of weird) > Was the intention perhaps to use that in cases where we were not able to determine the exit code? Are we aware of such cases..? Regards ap