some more export and malloc safe returns null if size zero

This commit is contained in:
whaffman 2025-03-04 18:17:25 +01:00
parent 35083ca6c8
commit dbe5a0d433
2 changed files with 26 additions and 27 deletions

View File

@ -6,7 +6,7 @@
/* By: whaffman <whaffman@student.codam.nl> +#+ */
/* +#+ */
/* Created: 2025/02/20 11:32:53 by whaffman #+# #+# */
/* Updated: 2025/03/04 16:31:48 by whaffman ######## odam.nl */
/* Updated: 2025/03/04 16:41:06 by whaffman ######## odam.nl */
/* */
/* ************************************************************************** */
@ -38,13 +38,11 @@ int builtin_export(t_minishell *msh, t_command *cmd)
while (cmd->args[++i] != NULL)
{
arr = ft_split_safe(msh, cmd->args[i], '=');
if (arr == NULL || arr[0] == NULL)
return (ft_free_arr_safe(msh, arr), EXIT_FAILURE);
else if (ft_isvalid_identifier(arr[0]) == TRUE)
if (arr != NULL && arr[0] != NULL && ft_isvalid_identifier(arr[0]) == TRUE)
environment_update(msh, arr[0], arr[1]);
else
{
err = ft_strjoin_safe(msh, arr[0], ": not a valid identifier");
err = ft_strjoin_safe(msh, cmd->args[1], ": not a valid identifier");
error_msg("export", err);
return (ft_free_arr_safe(msh, arr), EXIT_FAILURE);
}

View File

@ -1,22 +1,23 @@
/* ************************************************************************** */
/* */
/* :::::::: */
/* malloc_safe.c :+: :+: */
/* +:+ */
/* By: whaffman <whaffman@student.codam.nl> +#+ */
/* +#+ */
/* Created: 2025/02/20 18:06:46 by whaffman #+# #+# */
/* Updated: 2025/02/20 18:07:00 by whaffman ######## odam.nl */
/* */
/* ************************************************************************** */
#include "minishell.h"
void *malloc_safe(t_minishell *msh, size_t size)
{
void *ptr;
ptr = malloc(size);
check_malloc(msh, ptr);
return (ptr);
}
/* ************************************************************************** */
/* */
/* :::::::: */
/* malloc_safe.c :+: :+: */
/* +:+ */
/* By: whaffman <whaffman@student.codam.nl> +#+ */
/* +#+ */
/* Created: 2025/02/20 18:06:46 by whaffman #+# #+# */
/* Updated: 2025/03/04 16:38:10 by whaffman ######## odam.nl */
/* */
/* ************************************************************************** */
#include "minishell.h"
void *malloc_safe(t_minishell *msh, size_t size)
{
void *ptr;
if (size == 0)
return (NULL);
ptr = malloc(size);
check_malloc(msh, ptr);
return (ptr);
}