Fixing assertion failure happening on some of the unix machines (dotnet/corefx#24017)
authorMaryam Ariyan <maryam.ariyan@microsoft.com>
Fri, 15 Sep 2017 00:42:34 +0000 (20:42 -0400)
committerDan Moseley <danmose@microsoft.com>
Fri, 15 Sep 2017 00:42:34 +0000 (17:42 -0700)
commit8d3a74fd67cfb75d4175cca7974c2b8df2c1cff6
tree4c8d684bbc70a0b4b2cdbda484f3fc0d3b60d2a2
parent2c78e1b7c1601ef21546a056eda8a20b8e5b52d7
Fixing assertion failure happening on some of the unix machines (dotnet/corefx#24017)

* Refactoring Process.Start to simplify logic

This also fixes the following existing issues:
- allows user to successfully open folder (23969) with UseShellExecute
- throws when opening a missing file with UseShellExecute

this makes these behaviours consistent across win/unix machines

Updated existing tests to comply with these new fixes

* Simplifying condition checks in Process.Start

* Applying code review comments

Commit migrated from https://github.com/dotnet/corefx/commit/a16368dc4694c0334a8794107a9e868020f0bed5
src/libraries/Common/src/Interop/Unix/System.Native/Interop.ForkAndExecProcess.cs
src/libraries/System.Diagnostics.Process/src/Resources/Strings.resx
src/libraries/System.Diagnostics.Process/src/System/Diagnostics/Process.Unix.cs
src/libraries/System.Diagnostics.Process/tests/ProcessTests.Unix.cs
src/libraries/System.Diagnostics.Process/tests/ProcessTests.cs