LibC: Fix enviroment variable allocation

This commit is contained in:
Bananymous 2025-06-28 17:58:20 +03:00
parent 2b2130ff42
commit 96f3efbf86
1 changed files with 4 additions and 4 deletions

View File

@ -71,18 +71,18 @@ static int putenv_impl(char* string, bool malloced)
free(environ[i]);
if (malloced)
s_environ_bitmap[i / 8] |= mask;
s_environ_bitmap[byte] |= mask;
else
s_environ_bitmap[i / 8] &= ~mask;
s_environ_bitmap[byte] &= ~mask;
environ[i] = string;
return 0;
}
}
if ((s_environ_count + 1) % 8 == 0)
if (s_environ_count % 8 == 0)
{
const size_t bytes = (s_environ_count + 1) / 8;
const size_t bytes = s_environ_count / 8 + 1;
void* new_bitmap = realloc(s_environ_bitmap, bytes);
if (new_bitmap == nullptr)