forked from qt-creator/qt-creator
Debugger: Add convenience function to pass lists of strings
... to *bridge.py and adjust surrounding code. Change-Id: I398ecf10a6b9c76ebf5683d2f3a6c28b57343663 Reviewed-by: hjk <hjk@qt.io>
This commit is contained in:
@@ -753,11 +753,19 @@ void DebuggerCommand::arg(const char *name, const char *value)
|
|||||||
void DebuggerCommand::arg(const char *name, const QList<int> &list)
|
void DebuggerCommand::arg(const char *name, const QList<int> &list)
|
||||||
{
|
{
|
||||||
QJsonArray numbers;
|
QJsonArray numbers;
|
||||||
foreach (int item, list)
|
for (int item : list)
|
||||||
numbers.append(item);
|
numbers.append(item);
|
||||||
args = addToJsonObject(args, name, numbers);
|
args = addToJsonObject(args, name, numbers);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void DebuggerCommand::arg(const char *name, const QStringList &list)
|
||||||
|
{
|
||||||
|
QJsonArray arr;
|
||||||
|
for (const QString &item : list)
|
||||||
|
arr.append(toHex(item));
|
||||||
|
args = addToJsonObject(args, name, arr);
|
||||||
|
}
|
||||||
|
|
||||||
void DebuggerCommand::arg(const char *value)
|
void DebuggerCommand::arg(const char *value)
|
||||||
{
|
{
|
||||||
QTC_ASSERT(args.isArray() || args.isNull(), return);
|
QTC_ASSERT(args.isArray() || args.isNull(), return);
|
||||||
|
@@ -59,6 +59,7 @@ public:
|
|||||||
void arg(const char *name, const QString &value);
|
void arg(const char *name, const QString &value);
|
||||||
void arg(const char *name, const char *value);
|
void arg(const char *name, const char *value);
|
||||||
void arg(const char *name, const QList<int> &list);
|
void arg(const char *name, const QList<int> &list);
|
||||||
|
void arg(const char *name, const QStringList &list); // Note: Hex-encodes.
|
||||||
void arg(const char *name, const QJsonValue &value);
|
void arg(const char *name, const QJsonValue &value);
|
||||||
|
|
||||||
QString argsToPython() const;
|
QString argsToPython() const;
|
||||||
|
@@ -339,16 +339,8 @@ void LldbEngine::setupInferior()
|
|||||||
cmd2.arg("startmode", rp.startMode);
|
cmd2.arg("startmode", rp.startMode);
|
||||||
cmd2.arg("nativemixed", isNativeMixedActive());
|
cmd2.arg("nativemixed", isNativeMixedActive());
|
||||||
cmd2.arg("workingdirectory", rp.inferior.workingDirectory);
|
cmd2.arg("workingdirectory", rp.inferior.workingDirectory);
|
||||||
|
cmd2.arg("environment", rp.inferior.environment.toStringList());
|
||||||
QJsonArray env;
|
cmd2.arg("processargs", args.toUnixArgs());
|
||||||
foreach (const QString &item, rp.inferior.environment.toStringList())
|
|
||||||
env.append(toHex(item));
|
|
||||||
cmd2.arg("environment", env);
|
|
||||||
|
|
||||||
QJsonArray processArgs;
|
|
||||||
foreach (const QString &arg, args.toUnixArgs())
|
|
||||||
processArgs.append(QLatin1String(arg.toUtf8().toHex()));
|
|
||||||
cmd2.arg("processargs", processArgs);
|
|
||||||
|
|
||||||
if (rp.useTerminal) {
|
if (rp.useTerminal) {
|
||||||
QTC_ASSERT(state() == InferiorSetupRequested, qDebug() << state());
|
QTC_ASSERT(state() == InferiorSetupRequested, qDebug() << state());
|
||||||
|
Reference in New Issue
Block a user