aboutsummaryrefslogtreecommitdiff
path: root/src/env.c
diff options
context:
space:
mode:
authorCharles Cabergs <me@cacharle.xyz>2020-09-14 16:02:49 +0200
committerCharles Cabergs <me@cacharle.xyz>2020-09-14 16:02:49 +0200
commit6b2157c5e64cbf1a4ed4cd0b4de40bbeab535de7 (patch)
tree2f3f7da9af5dac3e98dbc68fd20e19e2c192829d /src/env.c
parent7afd22aacdae5d88f560576fd7261801beb60739 (diff)
downloadminishell-6b2157c5e64cbf1a4ed4cd0b4de40bbeab535de7.tar.gz
minishell-6b2157c5e64cbf1a4ed4cd0b4de40bbeab535de7.tar.bz2
minishell-6b2157c5e64cbf1a4ed4cd0b4de40bbeab535de7.zip
Fixing status to string leak by putting the string representation in a static buffer
Diffstat (limited to 'src/env.c')
-rw-r--r--src/env.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/env.c b/src/env.c
index 19ead42..42339c8 100644
--- a/src/env.c
+++ b/src/env.c
@@ -6,7 +6,7 @@
/* By: cacharle <marvin@42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2020/02/28 09:21:24 by cacharle #+# #+# */
-/* Updated: 2020/09/10 14:19:42 by charles ### ########.fr */
+/* Updated: 2020/09/14 16:00:15 by charles ### ########.fr */
/* */
/* ************************************************************************** */
@@ -91,6 +91,8 @@ int env_search_index(t_env env, char *key)
return (-1);
}
+static char g_status_buf[64] = {'\0'};
+
char *env_search_first_match(t_env env, const char *haystack)
{
size_t len;
@@ -105,7 +107,7 @@ char *env_search_first_match(t_env env, const char *haystack)
while (ft_isalnum(haystack[len]) || haystack[len] == '_')
len++;
if (haystack[0] == '?')
- return (ft_itoa(g_last_status)); // FIXME leak (static buffer)
+ return (ft_itoa_cpy(g_status_buf, g_last_status));
if (len == 0)
return (NULL);
i = -1;