ajout memrealloc et modif token_append sur les char esc et esc2
This commit is contained in:
parent
a99ef894e7
commit
6c8ea86a24
4 changed files with 38 additions and 4 deletions
|
|
@ -98,6 +98,7 @@ glob/lib_perso/ft_ld_reverse.c\
|
||||||
glob/lib_perso/ft_ld_size.c\
|
glob/lib_perso/ft_ld_size.c\
|
||||||
glob/lib_perso/ft_ld_swap.c\
|
glob/lib_perso/ft_ld_swap.c\
|
||||||
glob/lib_perso/ft_ld_to_tab.c\
|
glob/lib_perso/ft_ld_to_tab.c\
|
||||||
|
glob/lib_perso/ft_memrealloc.c\
|
||||||
glob/lib_perso/ft_strjoinf.c\
|
glob/lib_perso/ft_strjoinf.c\
|
||||||
glob/lib_perso/ft_strsubf.c\
|
glob/lib_perso/ft_strsubf.c\
|
||||||
glob/lib_perso/ft_tabdel.c\
|
glob/lib_perso/ft_tabdel.c\
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,7 @@
|
||||||
/* By: wescande <wescande@student.42.fr> +#+ +:+ +#+ */
|
/* By: wescande <wescande@student.42.fr> +#+ +:+ +#+ */
|
||||||
/* +#+#+#+#+#+ +#+ */
|
/* +#+#+#+#+#+ +#+ */
|
||||||
/* Created: 2017/01/04 16:31:18 by wescande #+# #+# */
|
/* Created: 2017/01/04 16:31:18 by wescande #+# #+# */
|
||||||
/* Updated: 2017/02/07 19:40:59 by wescande ### ########.fr */
|
/* Updated: 2017/02/08 13:54:57 by wescande ### ########.fr */
|
||||||
/* */
|
/* */
|
||||||
/* ************************************************************************** */
|
/* ************************************************************************** */
|
||||||
|
|
||||||
|
|
@ -114,4 +114,5 @@ char *ft_strsubf(char *s, unsigned int start,
|
||||||
void ft_tabdel(char ***mytab);
|
void ft_tabdel(char ***mytab);
|
||||||
int ft_tablen(char **mytab);
|
int ft_tablen(char **mytab);
|
||||||
|
|
||||||
|
void *ft_memrealloc(void *ptr, size_t old_s, size_t new_s);
|
||||||
#endif
|
#endif
|
||||||
|
|
|
||||||
30
42sh/src/glob/lib_perso/ft_memrealloc.c
Normal file
30
42sh/src/glob/lib_perso/ft_memrealloc.c
Normal file
|
|
@ -0,0 +1,30 @@
|
||||||
|
/* ************************************************************************** */
|
||||||
|
/* */
|
||||||
|
/* ::: :::::::: */
|
||||||
|
/* ft_memrealloc.c :+: :+: :+: */
|
||||||
|
/* +:+ +:+ +:+ */
|
||||||
|
/* By: wescande <marvin@42.fr> +#+ +:+ +#+ */
|
||||||
|
/* +#+#+#+#+#+ +#+ */
|
||||||
|
/* Created: 2016/11/05 13:44:36 by wescande #+# #+# */
|
||||||
|
/* Updated: 2017/02/08 13:54:33 by wescande ### ########.fr */
|
||||||
|
/* */
|
||||||
|
/* ************************************************************************** */
|
||||||
|
|
||||||
|
#include "glob.h"
|
||||||
|
|
||||||
|
void *ft_memrealloc(void *ptr, size_t old_s, size_t new_s)
|
||||||
|
{
|
||||||
|
void *n_ptr;
|
||||||
|
|
||||||
|
if (!ptr)
|
||||||
|
return (ft_memalloc(new_s));
|
||||||
|
if (!old_s)
|
||||||
|
{
|
||||||
|
ft_memdel(&ptr);
|
||||||
|
return (ft_memalloc(new_s));
|
||||||
|
}
|
||||||
|
n_ptr = ft_memalloc(new_s);
|
||||||
|
ft_memcpy(n_ptr, ptr, old_s);
|
||||||
|
ft_memdel(ptr);
|
||||||
|
return (n_ptr);
|
||||||
|
}
|
||||||
|
|
@ -6,7 +6,7 @@
|
||||||
/* By: jhalford <marvin@42.fr> +#+ +:+ +#+ */
|
/* By: jhalford <marvin@42.fr> +#+ +:+ +#+ */
|
||||||
/* +#+#+#+#+#+ +#+ */
|
/* +#+#+#+#+#+ +#+ */
|
||||||
/* Created: 2016/11/11 17:18:42 by jhalford #+# #+# */
|
/* Created: 2016/11/11 17:18:42 by jhalford #+# #+# */
|
||||||
/* Updated: 2017/02/07 15:32:08 by wescande ### ########.fr */
|
/* Updated: 2017/02/08 13:55:31 by wescande ### ########.fr */
|
||||||
/* */
|
/* */
|
||||||
/* ************************************************************************** */
|
/* ************************************************************************** */
|
||||||
|
|
||||||
|
|
@ -21,10 +21,12 @@ int token_append(t_token *token, char c, short int esc, short int esc2)
|
||||||
{
|
{
|
||||||
token->size += 8;
|
token->size += 8;
|
||||||
token->data = (char *)ft_realloc(token->data, token->size + 1);
|
token->data = (char *)ft_realloc(token->data, token->size + 1);
|
||||||
token->esc = (unsigned char *)ft_realloc((char *)token->esc,
|
token->esc = (unsigned char *)ft_memrealloc((char *)token->esc,
|
||||||
|
(token->size >> 3),
|
||||||
(token->size >> 3) + 1);
|
(token->size >> 3) + 1);
|
||||||
token->esc[token->size >> 3] = 0;
|
token->esc[token->size >> 3] = 0;
|
||||||
token->esc2 = (unsigned char *)ft_realloc((char *)token->esc2,
|
token->esc2 = (unsigned char *)ft_memrealloc((char *)token->esc2,
|
||||||
|
(token->size >> 3),
|
||||||
(token->size >> 3) + 1);
|
(token->size >> 3) + 1);
|
||||||
token->esc2[token->size >> 3] = 0;
|
token->esc2[token->size >> 3] = 0;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue