Correct environ parsing on FreeBSD

Sync Host:GetEnvironment with Linux and Kamil Rytarowski's forthcoming
NetBSD change in review D31784.

llvm-svn: 299781
This commit is contained in:
Ed Maste 2017-04-07 16:40:25 +00:00
parent 8c78ca2e8f
commit 70a26e93a9
1 changed files with 9 additions and 12 deletions

View File

@ -52,18 +52,6 @@ extern char **environ;
using namespace lldb;
using namespace lldb_private;
size_t Host::GetEnvironment(StringList &env) {
char *v;
char **var = environ;
for (; var != NULL && *var != NULL; ++var) {
v = strchr(*var, (int)'-');
if (v == NULL)
continue;
env.AppendString(v);
}
return env.GetSize();
}
static bool
GetFreeBSDProcessArgs(const ProcessInstanceInfoMatch *match_info_ptr,
ProcessInstanceInfo &process_info) {
@ -243,6 +231,15 @@ bool Host::GetProcessInfo(lldb::pid_t pid, ProcessInstanceInfo &process_info) {
return false;
}
size_t Host::GetEnvironment(StringList &env) {
char **host_env = environ;
char *env_entry;
size_t i;
for (i = 0; (env_entry = host_env[i]) != NULL; ++i)
env.AppendString(env_entry);
return i;
}
Error Host::ShellExpandArguments(ProcessLaunchInfo &launch_info) {
return Error("unimplemented");
}