Process launcher updates (#6183)

* Enable process and ap connection tests on linux
* Updated 'OpenProjectManager' to use new the ProcessLauncher argument type
* Add logic to double-escape escaped double quotes in arguments on windows platforms
* Updated argument for LaunchProjectManager to reflect new ProcessLauncher argument type
* Fixed unit test arguments for 'arg=value' condition
* Fix compile errors for BuilderManager and RHI.Edit\Utils.cpp
* PAL'ify the GetCommandLineParametersAsString() to handle windows specific behavior

Signed-off-by: Steve Pham <82231385+spham-amzn@users.noreply.github.com>

Co-authored-by: byrcolin <byrcolin@amazon.com>
This commit is contained in:
Steve Pham
2021-12-08 09:30:19 -08:00
committed by GitHub
parent 29da71e64e
commit 558532f094
17 changed files with 285 additions and 180 deletions
@@ -6,10 +6,10 @@
*
*/
#include <AzCore/StringFunc/StringFunc.h>
#include <AzFramework/Process/ProcessWatcher.h>
#include <AzFramework/Process/ProcessCommunicator.h>
namespace AzFramework
{
@@ -83,4 +83,23 @@ namespace AzFramework
{
}
AZStd::string ProcessLauncher::ProcessLaunchInfo::GetCommandLineParametersAsString() const
{
struct CommandLineParametersVisitor
{
AZStd::string operator()(const AZStd::string& commandLine) const
{
return commandLine;
}
AZStd::string operator()(const AZStd::vector<AZStd::string>& commandLineArray) const
{
AZStd::string commandLineResult;
Az::StringFunc::Join(commandLineResult, commandLineArray.begin(), commandLineArray.end(), " ");
return commandLineResult;
}
};
return AZStd::visit(CommandLineParametersVisitor{}, m_commandlineParameters);
}
} //namespace AzFramework