Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 412f6aae authored by Josh Gao's avatar Josh Gao Committed by android-build-merger
Browse files

Merge "adb: handle some edge cases with process environments."

am: 80f3b043

* commit '80f3b043':
  adb: handle some edge cases with process environments.
parents 7b74dc83 80f3b043
Loading
Loading
Loading
Loading
+12 −7
Original line number Diff line number Diff line
@@ -250,14 +250,19 @@ bool Subprocess::ForkAndExec() {
    // Construct the environment for the child before we fork.
    passwd* pw = getpwuid(getuid());
    std::unordered_map<std::string, std::string> env;

    if (environ) {
        char** current = environ;
        while (char* env_cstr = *current++) {
            std::string env_string = env_cstr;
            char* delimiter = strchr(env_string.c_str(), '=');

            // Drop any values that don't contain '='.
            if (delimiter) {
                *delimiter++ = '\0';
                env[env_string.c_str()] = delimiter;
            }
        }
    }

    if (pw != nullptr) {
        // TODO: $HOSTNAME? Normally bash automatically sets that, but mksh doesn't.