unset ok
This commit is contained in:
@@ -3,27 +3,21 @@
|
||||
|
||||
int builtin_unset(int argc, char *argv[], t_all *c)
|
||||
{
|
||||
int position;
|
||||
extern char **environ;
|
||||
int env_position;
|
||||
|
||||
(void)argc;
|
||||
(void)c;
|
||||
//position = getenv_position(c->envp, argv[1]);
|
||||
position = getenv_position(environ, argv[1]);
|
||||
if (position == -1)
|
||||
env_position = getenv_position(environ, argv[1]);
|
||||
if (environ[env_position] == '\0')
|
||||
return (0);
|
||||
// while (c->envp[position])
|
||||
while (environ[position])
|
||||
while (environ[env_position + 1])
|
||||
{
|
||||
write(1, "1", 1);
|
||||
//free(c->envp[position]);
|
||||
free(environ[position]);
|
||||
//c->envp[position] = ft_strdup(c->envp[position + 1]);
|
||||
environ[position] = ft_strdup(environ[position + 1]);
|
||||
position++;
|
||||
free(environ[env_position]);
|
||||
environ[env_position] = ft_strdup(environ[env_position + 1]);
|
||||
env_position++;
|
||||
}
|
||||
write(1, "2", 1);
|
||||
//free(c->envp[position]);
|
||||
free(environ[position]);
|
||||
free(environ[env_position]);
|
||||
environ[env_position] = NULL;
|
||||
return (0);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user