Set return value to 1 when input file is not found
authorLukas Jiriste <ljiriste@student.42prague.com>
Fri, 30 Aug 2024 12:52:09 +0000 (14:52 +0200)
committerLukas Jiriste <ljiriste@student.42prague.com>
Fri, 30 Aug 2024 12:52:09 +0000 (14:52 +0200)
Input file for redirection.

src/execution.c

index 79991d80624dab412aac5f9c1b21253080e1470b..085a286f7fc18498f0ad5e2032b4f77218bcaf36 100644 (file)
@@ -6,7 +6,7 @@
 /*   By: lnikolov <lnikolov@student.42prague.com    +#+  +:+       +#+        */
 /*                                                +#+#+#+#+#+   +#+           */
 /*   Created: 2024/07/21 08:57:54 by ljiriste          #+#    #+#             */
-/*   Updated: 2024/08/30 14:42:08 by ljiriste         ###   ########.fr       */
+/*   Updated: 2024/08/30 14:48:10 by ljiriste         ###   ########.fr       */
 /*                                                                            */
 /* ************************************************************************** */
 
@@ -128,7 +128,7 @@ int expand_filename(char **filename, const t_execution_env *env)
        return (0);
 }
 
-int    add_redirection_file(t_vec *redirections, t_parse_tree_node *io_file, int fd, const t_execution_env *env)
+int    add_redirection_file(t_vec *redirections, t_parse_tree_node *io_file, int fd, t_execution_env *env)
 {
        t_redirection                   redir;
        const t_parse_tree_node *operator;
@@ -148,6 +148,7 @@ int add_redirection_file(t_vec *redirections, t_parse_tree_node *io_file, int fd
                if (sec_fd < 0)
                {
                        free(filename);
+                       env->ret_val = 1;
                        return (1);
                }
                redir = (t_redirection){.from_to_fds[0] = fd, .from_to_fds[1] = sec_fd};
@@ -291,7 +292,7 @@ int add_redirection_here(t_vec *redirections, t_parse_tree_node *io_here, int fd
        return (ft_vec_append(redirections, &redir) != success);
 }
 
-int    add_redirection(t_vec *redirections, t_parse_tree_node *redirect, const t_execution_env *env)
+int    add_redirection(t_vec *redirections, t_parse_tree_node *redirect, t_execution_env *env)
 {
        int                             fd;
        t_parse_tree_node       *subnode;
@@ -311,7 +312,7 @@ int add_redirection(t_vec *redirections, t_parse_tree_node *redirect, const t_ex
                return (add_redirection_here(redirections, subnode, fd, env));
 }
 
-int    save_redirections_psfix(t_vec *redirections, t_parse_tree_node *node, const t_execution_env *env)
+int    save_redirections_psfix(t_vec *redirections, t_parse_tree_node *node, t_execution_env *env)
 {
        size_t                          i;
        t_parse_tree_node       *subnode;
@@ -333,7 +334,7 @@ int save_redirections_psfix(t_vec *redirections, t_parse_tree_node *node, const
        return (0);
 }
 
-int    save_redirections(t_vec *redirections, t_parse_tree_node *simple_command, const t_execution_env *env)
+int    save_redirections(t_vec *redirections, t_parse_tree_node *simple_command, t_execution_env *env)
 {
        t_parse_tree_node       *subnode;