Example #1
0
int				get_next_line(int const fd, char **line)
{
	int			ret;
	char		*temp;
	static char	*save;
	char		*buff;

	buff = ft_strnew(BUFF_SIZE + 1);
	save = (save == NULL) ? ft_strnew(1) : save;
	if (buff == NULL || BUFF_SIZE <= 0 || line == NULL)
		return (-1);
	ret = 42;
	while ((ft_strchr(save, '\n') == NULL) && ret > 0)
	{
		if ((ret = read(fd, buff, BUFF_SIZE)) == -1)
			return (-1);
		buff[ret] = '\0';
		temp = save;
		save = ft_strjoin(save, buff);
		ft_strdel(&temp);
	}
	ft_norm(&buff, line, &save, ret);
	if (ret == 0 && *line[0] == '\0')
		return (0);
	save = ft_stock(save);
	return (1);
}
Example #2
0
void	ft_reput_prompt(int a)
{
	ft_reset();
	tputs(tgetstr("do", NULL), 1, ft_putonterm);
	tputs(tgetstr("cr", NULL), 1, ft_putonterm);
	tputs(tgetstr("cd", NULL), 1, ft_putonterm);
	ft_prompt(ft_stock(NULL, 1));
	ft_strclr(g_e.buff);
	g_e.i = 0;
	(void)a;
}
Example #3
0
int main(int argc, char **argv)
{
	if (argc == 2)
		ft_check(ft_stock(argv[1]));
	return (0);
}