mirror of
https://github.com/Savapitech/42sh.git
synced 2026-01-18 16:57:28 +01:00
[ADD] colison in alias
This commit is contained in:
@@ -72,7 +72,7 @@ char *array_nto_strdup(char **array, int i)
|
||||
}
|
||||
|
||||
static
|
||||
int add_alias(alias_t *alias, char **args)
|
||||
int add_alias_array(alias_t *alias, char **args)
|
||||
{
|
||||
char **new_alias_array =
|
||||
realloc(alias->alias_array, sizeof(char *) * alias->size);
|
||||
@@ -91,6 +91,21 @@ int add_alias(alias_t *alias, char **args)
|
||||
return RETURN_SUCCESS;
|
||||
}
|
||||
|
||||
int add_alias(alias_t *alias, char **args)
|
||||
{
|
||||
int replace = -1;
|
||||
|
||||
for (size_t i = 0; i != alias->size - 1; i++)
|
||||
if (!strcmp(args[1], alias->alias_array[i]))
|
||||
replace = (int)(i);
|
||||
if (replace == -1)
|
||||
return add_alias_array(alias, args);
|
||||
alias->size--;
|
||||
free(alias->alias_to_replace[replace]);
|
||||
alias->alias_to_replace[replace] = array_nto_strdup(args, 2);
|
||||
return RETURN_SUCCESS;
|
||||
}
|
||||
|
||||
int builtins_alias(ef_t *ef, char **args)
|
||||
{
|
||||
alias_t *alias = ef->exec_ctx->alias;
|
||||
|
||||
Reference in New Issue
Block a user