mirror of
https://github.com/EnderIce2/Fennix.git
synced 2025-05-28 15:34:31 +00:00
fix(userspace/libc): handle NULL input in getenv function
Signed-off-by: EnderIce2 <enderice2@protonmail.com>
This commit is contained in:
parent
74ff9579f3
commit
c12ee67592
@ -76,11 +76,16 @@ export char *gcvt(double, int, char *);
|
||||
|
||||
export char *getenv(const char *name)
|
||||
{
|
||||
if (name == NULL)
|
||||
return NULL;
|
||||
|
||||
size_t len = strlen(name);
|
||||
for (char **env = environ; *env != 0; ++env)
|
||||
{
|
||||
char *thisEnv = *env;
|
||||
if (strncmp(thisEnv, name, strlen(name)) == 0 && thisEnv[strlen(name)] == '=')
|
||||
return thisEnv + strlen(name) + 1;
|
||||
char cmp = strncmp(thisEnv, name, len) == 0;
|
||||
if (cmp && thisEnv[len] == '=')
|
||||
return thisEnv + len + 1;
|
||||
}
|
||||
return NULL;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user