/* By: ljiriste <ljiriste@student.42prague.com> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/07/21 08:57:54 by ljiriste #+# #+# */
-/* Updated: 2024/07/21 13:03:02 by ljiriste ### ########.fr */
+/* Updated: 2024/07/21 13:11:50 by ljiriste ### ########.fr */
/* */
/* ************************************************************************** */
t_vec redirections;
t_vec assignments;
char **fields;
+ int res;
- save_redirections(&redirections, simple_command);
- save_assignments(&assignments, simple_command);
- fields = expand(simple_command, env, &redirections, &assignments);
- if (!fields)
+ res = save_redirections(&redirections, simple_command);
+ res = res || save_assignments(&assignments, simple_command);
+ if (!res)
+ fields = expand(simple_command, env, &redirections, &assignments);
+ if (!fields || res)
{
ft_vec_free(&redirections, void_free_redirection);
ft_vec_free(&assignments, void_free_assignments);
{
save_assignments(&assignments, env);
ex_redirections(&redirections);
+ ft_vec_free(&redirections, void_free_redirection);
+ ft_vec_free(&assignments, void_free_assignments);
return (0);
}
- ex_fields(fields, &assignments, &redirections, env);
+ res = ex_fields(fields, &assignments, &redirections, env);
ft_vec_free(&redirections, void_free_redirection);
ft_vec_free(&assignments, void_free_assignments);
free_fields(fields);
- return (0);
+ return (res);
}
int subshell(t_parse_tree_node *program, const t_execution_env *env)