forked from qt-creator/qt-creator
Debugger: Only pass environmental differences to inferior
This amends 0f46ad4a55.
Passing the whole environment is unneeded, and can cause
problems with multi-line variables.
Change-Id: I49a32c550ba52737bb8f797e227bb883be8b1df1
Reviewed-by: BogDan Vatra <bogdan@kde.org>
Reviewed-by: Niels Weber <niels.weber@theqtcompany.com>
This commit is contained in:
@@ -4263,9 +4263,13 @@ void GdbEngine::loadInitScript()
|
||||
|
||||
void GdbEngine::setEnvironmentVariables()
|
||||
{
|
||||
if (runParameters().environment.size()) {
|
||||
foreach (const QString &env, runParameters().environment.toStringList())
|
||||
postCommand("-gdb-set environment " + env.toUtf8());
|
||||
Environment sysEnv = Environment::systemEnvironment();
|
||||
Environment runEnv = runParameters().environment;
|
||||
foreach (const EnvironmentItem &item, sysEnv.diff(runEnv)) {
|
||||
if (item.unset)
|
||||
postCommand("unset environment " + item.name.toUtf8());
|
||||
else
|
||||
postCommand("-gdb-set environment " + item.name.toUtf8() + '=' + item.value.toUtf8());
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user