forked from qt-creator/qt-creator
ProcessInterface: Remove setWorkingDirectory()
It's a part of passed ProcessSetupData. Change-Id: I125d31cb1b316c1802d1d9d7fb5e1c5b3a3b8c18 Reviewed-by: hjk <hjk@qt.io>
This commit is contained in:
@@ -234,15 +234,13 @@ public:
|
|||||||
QByteArray readAllStandardError() override { QTC_CHECK(false); return {}; }
|
QByteArray readAllStandardError() override { QTC_CHECK(false); return {}; }
|
||||||
|
|
||||||
void setEnvironment(const Environment &) override { QTC_CHECK(false); }
|
void setEnvironment(const Environment &) override { QTC_CHECK(false); }
|
||||||
void setWorkingDirectory(const FilePath &) override { QTC_CHECK(false); }
|
|
||||||
void start(const QString &, const QStringList &, const QByteArray &) override
|
void start(const QString &, const QStringList &, const QByteArray &) override
|
||||||
{ QTC_CHECK(false); }
|
{ QTC_CHECK(false); }
|
||||||
void customStart(const CommandLine &command, const FilePath &workingDirectory,
|
void customStart(const CommandLine &command, const Environment &environment) override
|
||||||
const Environment &environment) override
|
|
||||||
{
|
{
|
||||||
m_terminal.setAbortOnMetaChars(m_setup->m_abortOnMetaChars);
|
m_terminal.setAbortOnMetaChars(m_setup->m_abortOnMetaChars);
|
||||||
m_terminal.setCommand(command);
|
m_terminal.setCommand(command);
|
||||||
m_terminal.setWorkingDirectory(workingDirectory);
|
m_terminal.setWorkingDirectory(m_setup->m_workingDirectory);
|
||||||
m_terminal.setEnvironment(environment);
|
m_terminal.setEnvironment(environment);
|
||||||
m_terminal.start();
|
m_terminal.start();
|
||||||
}
|
}
|
||||||
@@ -302,8 +300,6 @@ public:
|
|||||||
|
|
||||||
void setEnvironment(const Environment &environment) override
|
void setEnvironment(const Environment &environment) override
|
||||||
{ m_process->setProcessEnvironment(environment.toProcessEnvironment()); }
|
{ m_process->setProcessEnvironment(environment.toProcessEnvironment()); }
|
||||||
void setWorkingDirectory(const FilePath &dir) override
|
|
||||||
{ m_process->setWorkingDirectory(dir.path()); }
|
|
||||||
|
|
||||||
void start(const QString &program, const QStringList &arguments, const QByteArray &writeData) override
|
void start(const QString &program, const QStringList &arguments, const QByteArray &writeData) override
|
||||||
{
|
{
|
||||||
@@ -313,6 +309,7 @@ public:
|
|||||||
if (m_setup->m_belowNormalPriority)
|
if (m_setup->m_belowNormalPriority)
|
||||||
handler->setBelowNormalPriority();
|
handler->setBelowNormalPriority();
|
||||||
handler->setNativeArguments(m_setup->m_nativeArguments);
|
handler->setNativeArguments(m_setup->m_nativeArguments);
|
||||||
|
m_process->setWorkingDirectory(m_setup->m_workingDirectory.path());
|
||||||
m_process->setStandardInputFile(m_setup->m_standardInputFile);
|
m_process->setStandardInputFile(m_setup->m_standardInputFile);
|
||||||
m_process->setProcessChannelMode(m_setup->m_procesChannelMode);
|
m_process->setProcessChannelMode(m_setup->m_procesChannelMode);
|
||||||
m_process->setErrorString(m_setup->m_initialErrorString);
|
m_process->setErrorString(m_setup->m_initialErrorString);
|
||||||
@@ -402,10 +399,10 @@ public:
|
|||||||
|
|
||||||
void setEnvironment(const Environment &environment) override
|
void setEnvironment(const Environment &environment) override
|
||||||
{ m_handle->setEnvironment(environment); }
|
{ m_handle->setEnvironment(environment); }
|
||||||
void setWorkingDirectory(const FilePath &dir) override { m_handle->setWorkingDirectory(dir); }
|
|
||||||
|
|
||||||
void start(const QString &program, const QStringList &arguments, const QByteArray &writeData) override
|
void start(const QString &program, const QStringList &arguments, const QByteArray &writeData) override
|
||||||
{
|
{
|
||||||
|
m_handle->setWorkingDirectory(m_setup->m_workingDirectory);
|
||||||
m_handle->setStandardInputFile(m_setup->m_standardInputFile);
|
m_handle->setStandardInputFile(m_setup->m_standardInputFile);
|
||||||
m_handle->setProcessChannelMode(m_setup->m_procesChannelMode);
|
m_handle->setProcessChannelMode(m_setup->m_procesChannelMode);
|
||||||
m_handle->setErrorString(m_setup->m_initialErrorString);
|
m_handle->setErrorString(m_setup->m_initialErrorString);
|
||||||
@@ -541,8 +538,7 @@ public:
|
|||||||
return filePath.searchInPath();
|
return filePath.searchInPath();
|
||||||
}
|
}
|
||||||
|
|
||||||
void defaultStart(const CommandLine &commandLine, const FilePath &workingDirectory,
|
void defaultStart(const CommandLine &commandLine, const Environment &environment)
|
||||||
const Environment &environment)
|
|
||||||
{
|
{
|
||||||
if (processLog().isDebugEnabled()) {
|
if (processLog().isDebugEnabled()) {
|
||||||
static int n = 0;
|
static int n = 0;
|
||||||
@@ -550,12 +546,11 @@ public:
|
|||||||
}
|
}
|
||||||
|
|
||||||
m_process->setEnvironment(environment);
|
m_process->setEnvironment(environment);
|
||||||
m_process->setWorkingDirectory(workingDirectory);
|
|
||||||
|
|
||||||
QString commandString;
|
QString commandString;
|
||||||
ProcessArgs arguments;
|
ProcessArgs arguments;
|
||||||
const bool success = ProcessArgs::prepareCommand(commandLine, &commandString, &arguments,
|
const bool success = ProcessArgs::prepareCommand(commandLine, &commandString, &arguments,
|
||||||
&environment, &workingDirectory);
|
&environment, &m_setup.m_workingDirectory);
|
||||||
|
|
||||||
if (commandLine.executable().osType() == OsTypeWindows) {
|
if (commandLine.executable().osType() == OsTypeWindows) {
|
||||||
QString args;
|
QString args;
|
||||||
@@ -570,7 +565,7 @@ public:
|
|||||||
m_setup.m_nativeArguments = args;
|
m_setup.m_nativeArguments = args;
|
||||||
// Note: Arguments set with setNativeArgs will be appended to the ones
|
// Note: Arguments set with setNativeArgs will be appended to the ones
|
||||||
// passed with start() below.
|
// passed with start() below.
|
||||||
start(commandString, QStringList(), workingDirectory, m_setup.m_writeData);
|
start(commandString, QStringList(), m_setup.m_writeData);
|
||||||
} else {
|
} else {
|
||||||
if (!success) {
|
if (!success) {
|
||||||
q->setErrorString(tr("Error in command line."));
|
q->setErrorString(tr("Error in command line."));
|
||||||
@@ -579,14 +574,13 @@ public:
|
|||||||
emit q->errorOccurred(QProcess::UnknownError);
|
emit q->errorOccurred(QProcess::UnknownError);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
start(commandString, arguments.toUnixArgs(), workingDirectory, m_setup.m_writeData);
|
start(commandString, arguments.toUnixArgs(), m_setup.m_writeData);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void start(const QString &program, const QStringList &arguments,
|
void start(const QString &program, const QStringList &arguments, const QByteArray &writeData)
|
||||||
const FilePath &workingDirectory, const QByteArray &writeData)
|
|
||||||
{
|
{
|
||||||
const FilePath programFilePath = resolve(workingDirectory, FilePath::fromString(program));
|
const FilePath programFilePath = resolve(m_setup.m_workingDirectory, FilePath::fromString(program));
|
||||||
if (programFilePath.exists() && programFilePath.isExecutableFile()) {
|
if (programFilePath.exists() && programFilePath.isExecutableFile()) {
|
||||||
s_start.measureAndRun(&ProcessInterface::start, m_process, program, arguments, writeData);
|
s_start.measureAndRun(&ProcessInterface::start, m_process, program, arguments, writeData);
|
||||||
} else {
|
} else {
|
||||||
@@ -795,9 +789,9 @@ void QtcProcess::start()
|
|||||||
const CommandLine cmd = d->fullCommandLine();
|
const CommandLine cmd = d->fullCommandLine();
|
||||||
const Environment env = d->fullEnvironment();
|
const Environment env = d->fullEnvironment();
|
||||||
if (d->m_process->isCustomStart())
|
if (d->m_process->isCustomStart())
|
||||||
d->m_process->customStart(cmd, d->m_setup.m_workingDirectory, env);
|
d->m_process->customStart(cmd, env);
|
||||||
else
|
else
|
||||||
d->defaultStart(cmd, d->m_setup.m_workingDirectory, env);
|
d->defaultStart(cmd, env);
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef Q_OS_WIN
|
#ifdef Q_OS_WIN
|
||||||
|
|||||||
@@ -283,11 +283,9 @@ public:
|
|||||||
virtual QByteArray readAllStandardError() = 0;
|
virtual QByteArray readAllStandardError() = 0;
|
||||||
|
|
||||||
virtual void setEnvironment(const Environment &environment) = 0;
|
virtual void setEnvironment(const Environment &environment) = 0;
|
||||||
virtual void setWorkingDirectory(const FilePath &dir) = 0;
|
|
||||||
virtual void start(const QString &program, const QStringList &arguments,
|
virtual void start(const QString &program, const QStringList &arguments,
|
||||||
const QByteArray &writeData) = 0;
|
const QByteArray &writeData) = 0;
|
||||||
virtual void customStart(const CommandLine &, const FilePath &,
|
virtual void customStart(const CommandLine &, const Environment &) { QTC_CHECK(false); }
|
||||||
const Environment &) { QTC_CHECK(false); }
|
|
||||||
virtual bool isCustomStart() const { return false; }
|
virtual bool isCustomStart() const { return false; }
|
||||||
virtual void terminate() = 0;
|
virtual void terminate() = 0;
|
||||||
virtual void kill() = 0;
|
virtual void kill() = 0;
|
||||||
|
|||||||
Reference in New Issue
Block a user