diff options
| author | Charles <sircharlesaze@gmail.com> | 2019-10-18 15:31:00 +0200 |
|---|---|---|
| committer | Charles <sircharlesaze@gmail.com> | 2019-10-18 15:31:00 +0200 |
| commit | 43e6c82cad5d790c75c918a4eca85cdec894d1c8 (patch) | |
| tree | 563e14ee8d41f498dbc411629aeafaeb56748402 /ft_substr.c | |
| parent | 6cb01d2fd8a6b07ef3ddaa8bb322f30c545316e7 (diff) | |
| download | libft-43e6c82cad5d790c75c918a4eca85cdec894d1c8.tar.gz libft-43e6c82cad5d790c75c918a4eca85cdec894d1c8.tar.bz2 libft-43e6c82cad5d790c75c918a4eca85cdec894d1c8.zip | |
Fixed ft_substr, added a few protection to list functions
Diffstat (limited to 'ft_substr.c')
| -rw-r--r-- | ft_substr.c | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/ft_substr.c b/ft_substr.c index 1c23e85..88f7203 100644 --- a/ft_substr.c +++ b/ft_substr.c @@ -6,7 +6,7 @@ /* By: cacharle <marvin@42.fr> +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2019/10/17 08:28:49 by cacharle #+# #+# */ -/* Updated: 2019/10/17 08:28:55 by cacharle ### ########.fr */ +/* Updated: 2019/10/18 11:55:44 by cacharle ### ########.fr */ /* */ /* ************************************************************************** */ @@ -18,15 +18,18 @@ char *ft_substr(char const *s, unsigned int start, size_t len) unsigned int i; char *sub; - if (start > ft_strlen(s)) + if (s == NULL) return (NULL); if ((sub = (char*)malloc(sizeof(char) * (len + 1))) == NULL) return (NULL); i = 0; - while (i < len) + if (!(start > ft_strlen(s))) { - sub[i] = s[start + i]; - i++; + while (i < len && s[start + i]) + { + sub[i] = s[start + i]; + i++; + } } sub[i] = '\0'; return (sub); |
