code review request: 7051946: Runtime.exec(String command) / ProcessBuilder command parsing issues
Alan.Bateman at oracle.com
Wed Sep 14 10:14:44 UTC 2011
Michael McMahon wrote:
> We could add a sentence to the existing @throws clause for IAE.
> So it would say "If |command| is empty, or on some platforms, may be
> thrown if command contains illegal characters".
> I'm reluctant to be more precise than that, since as far as I know,
> there doesn't appear to be
> any illegal characters for filenames in Unix.
I agree that you can't be too specific. I'm not sure if "illegal
characters" should be in the wording as it begs the question as to which
characters are legal. An alternative to trying to come up with some
wording is to just specify the long standing behavior which seems to be
that IOException is thrown if an I/O errors or the command line is
malformed. I see David's reply pointing out that there are similar
issues with ProcessBuilder. That is only specified to throw
IndexOutOfBoundException if the command line is empty so it would be
good to check those cases too.
More information about the core-libs-dev