forked from qt-creator/qt-creator
Set LD_LIBRARY_PATH/DYLD_LIBRARY_PATH to empty if not set at all
Work around qt being stupid. Task-number: QTCREATORBUG-6583 Change-Id: I9443adea0b2be7e4d26d70ab817858d71fa1bbdb Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
This commit is contained in:
@@ -657,6 +657,19 @@ void QtcProcess::start()
|
||||
if (m_environment.size() == 0)
|
||||
qWarning("QtcProcess::start: Empty environment set when running '%s'.", qPrintable(m_command));
|
||||
env = m_environment;
|
||||
|
||||
// If the process environemnt has no libraryPath,
|
||||
// Qt will copy creator's libraryPath into the process environment.
|
||||
// That's brain dead, and we work around it
|
||||
#if defined(Q_OS_UNIX)
|
||||
# if defined(Q_OS_MAC)
|
||||
static const char libraryPath[] = "DYLD_LIBRARY_PATH";
|
||||
# else
|
||||
static const char libraryPath[] = "LD_LIBRARY_PATH";
|
||||
# endif
|
||||
if (env.constFind(libraryPath) == env.constEnd())
|
||||
env.set(libraryPath, QLatin1String(""));
|
||||
#endif
|
||||
QProcess::setEnvironment(env.toStringList());
|
||||
} else {
|
||||
env = Environment::systemEnvironment();
|
||||
|
||||
Reference in New Issue
Block a user