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

Commit d53c2740 authored by George Burgess IV's avatar George Burgess IV
Browse files

bit: avoid calling strdup(NULL)

It seems the behavior of strdup is undefined when NULL is passed in.
Clang's static analyzer complains about this:

> frameworks/base/tools/bit/command.cpp:195:25: warning: Null pointer
passed to 1st parameter expecting 'nonnull'
[clang-analyzer-core.NonNullParamChecker]

Since we don't seem to care about malloc failures (which is a good thing
IMO), adding a second check for the successful completion of `strdup`
seems pointless.

Bug: 206470603
Test: TreeHugger
Change-Id: Ib621659e6fb600203694974f02d96ba0acb3362f
parent 7db2d81a
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -192,10 +192,11 @@ exec_with_path_search(const char* prog, char const* const* argv, char const* con
    if (strchr(prog, '/') != NULL) {
        return execve(prog, (char*const*)argv, (char*const*)envp);
    } else {
        char* pathEnv = strdup(getenv("PATH"));
        if (pathEnv == NULL) {
        const char* pathEnvRaw = getenv("PATH");
        if (pathEnvRaw == NULL) {
            return 1;
        }
        char* pathEnv = strdup(pathEnvRaw);
        char* dir = pathEnv;
        while (dir) {
            char* next = strchr(dir, ':');