FIX TimedShell obtain process exit value in finally-clause
to prevent illegal state exception because
    return process.exitValue()
is compiled to
    int x = process.exitValue();
    return x;
and the first line is executed BEFORE finally.