diff options
Diffstat (limited to 'plugins/haskell/haskellrunconfiguration.cpp')
| -rw-r--r-- | plugins/haskell/haskellrunconfiguration.cpp | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/plugins/haskell/haskellrunconfiguration.cpp b/plugins/haskell/haskellrunconfiguration.cpp index 52529a7..6075913 100644 --- a/plugins/haskell/haskellrunconfiguration.cpp +++ b/plugins/haskell/haskellrunconfiguration.cpp @@ -76,20 +76,20 @@ Runnable HaskellRunConfiguration::runnable() const { const Utils::FilePath projectDirectory = target()->project()->projectDirectory(); Runnable r; - if (BuildConfiguration *buildConfiguration = target()->activeBuildConfiguration()) - r.commandLineArguments += "--work-dir \"" - + QDir(projectDirectory.toString()) - .relativeFilePath( - buildConfiguration->buildDirectory().toString()) - + "\" "; - const QString executable = aspect<HaskellExecutableAspect>()->value(); - r.commandLineArguments += "exec \"" + executable + "\""; + QStringList args; + if (BuildConfiguration *buildConfiguration = target()->activeBuildConfiguration()) { + args << "--work-dir" + << QDir(projectDirectory.toString()).relativeFilePath( + buildConfiguration->buildDirectory().toString()); + } + args << "exec" << aspect<HaskellExecutableAspect>()->value(); const QString arguments = aspect<ArgumentsAspect>()->arguments(macroExpander()); if (!arguments.isEmpty()) - r.commandLineArguments += " -- " + arguments; + args << "--" << arguments; + r.workingDirectory = projectDirectory; r.environment = aspect<LocalEnvironmentAspect>()->environment(); - r.executable = r.environment.searchInPath(HaskellManager::stackExecutable().toString()); + r.command = {r.environment.searchInPath(HaskellManager::stackExecutable().toString()), args}; return r; } |
