This revision was automatically updated to reflect the committed changes.
Closed by commit rGa92673fe9a08: [lldb-vscode] Convert launch_info and
attach_info to local variables (authored by anton.kolesov, committed by
tatyana-krasnukha).
Changed prior to commit:
https://reviews.llvm.org/D76593?vs=252503&id=252873#toc
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D76593/new/
https://reviews.llvm.org/D76593
Files:
lldb/tools/lldb-vscode/VSCode.cpp
lldb/tools/lldb-vscode/VSCode.h
lldb/tools/lldb-vscode/lldb-vscode.cpp
Index: lldb/tools/lldb-vscode/lldb-vscode.cpp
===================================================================
--- lldb/tools/lldb-vscode/lldb-vscode.cpp
+++ lldb/tools/lldb-vscode/lldb-vscode.cpp
@@ -508,13 +508,14 @@
llvm::json::Object response;
lldb::SBError error;
FillResponse(request, response);
+ lldb::SBAttachInfo attach_info;
auto arguments = request.getObject("arguments");
const lldb::pid_t pid =
GetUnsigned(arguments, "pid", LLDB_INVALID_PROCESS_ID);
if (pid != LLDB_INVALID_PROCESS_ID)
- g_vsc.attach_info.SetProcessID(pid);
+ attach_info.SetProcessID(pid);
const auto wait_for = GetBoolean(arguments, "waitFor", false);
- g_vsc.attach_info.SetWaitForLaunch(wait_for, false /*async*/);
+ attach_info.SetWaitForLaunch(wait_for, false /*async*/);
g_vsc.init_commands = GetStrings(arguments, "initCommands");
g_vsc.pre_run_commands = GetStrings(arguments, "preRunCommands");
g_vsc.stop_commands = GetStrings(arguments, "stopCommands");
@@ -547,20 +548,19 @@
g_vsc.RunPreRunCommands();
if (pid == LLDB_INVALID_PROCESS_ID && wait_for) {
- char attach_info[256];
- auto attach_info_len =
- snprintf(attach_info, sizeof(attach_info),
- "Waiting to attach to \"%s\"...",
- g_vsc.target.GetExecutable().GetFilename());
- g_vsc.SendOutput(OutputType::Console, llvm::StringRef(attach_info,
- attach_info_len));
+ char attach_msg[256];
+ auto attach_msg_len = snprintf(attach_msg, sizeof(attach_msg),
+ "Waiting to attach to \"%s\"...",
+ g_vsc.target.GetExecutable().GetFilename());
+ g_vsc.SendOutput(OutputType::Console,
+ llvm::StringRef(attach_msg, attach_msg_len));
}
if (attachCommands.empty()) {
// No "attachCommands", just attach normally.
// Disable async events so the attach will be successful when we return from
// the launch call and the launch will happen synchronously
g_vsc.debugger.SetAsync(false);
- g_vsc.target.Attach(g_vsc.attach_info, error);
+ g_vsc.target.Attach(attach_info, error);
// Reenable async events
g_vsc.debugger.SetAsync(true);
} else {
@@ -1381,26 +1381,26 @@
}
// Instantiate a launch info instance for the target.
- g_vsc.launch_info = g_vsc.target.GetLaunchInfo();
+ auto launch_info = g_vsc.target.GetLaunchInfo();
// Grab the current working directory if there is one and set it in the
// launch info.
const auto cwd = GetString(arguments, "cwd");
if (!cwd.empty())
- g_vsc.launch_info.SetWorkingDirectory(cwd.data());
+ launch_info.SetWorkingDirectory(cwd.data());
// Extract any extra arguments and append them to our program arguments for
// when we launch
auto args = GetStrings(arguments, "args");
if (!args.empty())
- g_vsc.launch_info.SetArguments(MakeArgv(args).data(), true);
+ launch_info.SetArguments(MakeArgv(args).data(), true);
// Pass any environment variables along that the user specified.
auto envs = GetStrings(arguments, "env");
if (!envs.empty())
- g_vsc.launch_info.SetEnvironmentEntries(MakeArgv(envs).data(), true);
+ launch_info.SetEnvironmentEntries(MakeArgv(envs).data(), true);
- auto flags = g_vsc.launch_info.GetLaunchFlags();
+ auto flags = launch_info.GetLaunchFlags();
if (GetBoolean(arguments, "disableASLR", true))
flags |= lldb::eLaunchFlagDisableASLR;
@@ -1409,9 +1409,9 @@
if (GetBoolean(arguments, "shellExpandArguments", false))
flags |= lldb::eLaunchFlagShellExpandArguments;
const bool detatchOnError = GetBoolean(arguments, "detachOnError", false);
- g_vsc.launch_info.SetDetachOnError(detatchOnError);
- g_vsc.launch_info.SetLaunchFlags(flags | lldb::eLaunchFlagDebug |
- lldb::eLaunchFlagStopAtEntry);
+ launch_info.SetDetachOnError(detatchOnError);
+ launch_info.SetLaunchFlags(flags | lldb::eLaunchFlagDebug |
+ lldb::eLaunchFlagStopAtEntry);
// Run any pre run LLDB commands the user specified in the launch.json
g_vsc.RunPreRunCommands();
@@ -1419,7 +1419,7 @@
// Disable async events so the launch will be successful when we return from
// the launch call and the launch will happen synchronously
g_vsc.debugger.SetAsync(false);
- g_vsc.target.Launch(g_vsc.launch_info, error);
+ g_vsc.target.Launch(launch_info, error);
g_vsc.debugger.SetAsync(true);
} else {
g_vsc.RunLLDBCommands("Running launchCommands:", launchCommands);
Index: lldb/tools/lldb-vscode/VSCode.h
===================================================================
--- lldb/tools/lldb-vscode/VSCode.h
+++ lldb/tools/lldb-vscode/VSCode.h
@@ -70,8 +70,6 @@
OutputStream output;
lldb::SBDebugger debugger;
lldb::SBTarget target;
- lldb::SBAttachInfo attach_info;
- lldb::SBLaunchInfo launch_info;
lldb::SBValueList variables;
lldb::SBBroadcaster broadcaster;
int64_t num_regs;
Index: lldb/tools/lldb-vscode/VSCode.cpp
===================================================================
--- lldb/tools/lldb-vscode/VSCode.cpp
+++ lldb/tools/lldb-vscode/VSCode.cpp
@@ -28,8 +28,8 @@
VSCode g_vsc;
VSCode::VSCode()
- : launch_info(nullptr), variables(), broadcaster("lldb-vscode"),
- num_regs(0), num_locals(0), num_globals(0), log(),
+ : variables(), broadcaster("lldb-vscode"), num_regs(0), num_locals(0),
+ num_globals(0), log(),
exception_breakpoints(
{{"cpp_catch", "C++ Catch", lldb::eLanguageTypeC_plus_plus},
{"cpp_throw", "C++ Throw", lldb::eLanguageTypeC_plus_plus},
_______________________________________________
lldb-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits