[Linux] Open /dev/null in RDONLY mode for input
[Linux] Report error before subprocess exits

Such that it can be reported to the user
[Linux] Check return value from dup2

Just to make it more robust
[Linux] Shutoff compiler warning
[Linux] Report the first error

To make it easier to trouble shoot
[Win32] Avoid secure APIs

It doesn't work with msvcrt.dll from Windows XP
Merge branch 'call' into call-atronix