Example #1
0
void			ft_fill_data(t_ls *new_elem, struct stat *buf, s_data *data)
{
	t_ls		*tmp;
	
	data->blocks = data->blocks + (long long int)buf->st_blocks;
	free(data->blocks_disp);
	data->blocks_disp = NULL;
	data->blocks_disp = ft_longlongtoa(data->blocks);
	new_elem->type = ft_get_type(buf);
	new_elem->size = ft_get_size(buf);
	new_elem->nbr_hl = ft_get_hl(buf);
	new_elem->group = ft_get_group(buf);
	new_elem->owner = ft_get_owner(buf);
	new_elem->permission = ft_get_permission(new_elem, buf);
	new_elem->modification = ft_get_modification(buf);
	new_elem->name = ft_strcpy(data->file_to_open_name);
	new_elem->name_low = ft_to_lower(data->file_to_open_name);
	if (data->dev)
		ft_get_device(new_elem, buf);
	new_elem->next = NULL;
	if (data->ls)
	{
		tmp = data->ls;
		while (tmp->next)
			tmp = tmp->next;
		tmp->next = new_elem;
	}
	else
		data->ls = new_elem;
}
Example #2
0
int		main(int ac, char **av)
{
	struct termios	term;
	t_data			d;
	t_list			*list;

	if (ac <= 1)
		return (0);
	list = NULL;
	d.max_row = --ac;
	d.pos_init = d.max_row;
	d.pos = d.pos_init;
	list = ft_make_list(av, &d);
	if (ft_set_stage(ac, &term))
	ft_get_size(&d);
	make_header(&d);
	get_col_nb(&d);
	ft_signals();
	print_multi_tab(list, &d);
	tputs(tgetstr("vi", NULL), 1, tputs_putchar);
	d.us = 1;
	ft_while(&d, &term, list);
	tputs(tgetstr("ve", NULL), 1, tputs_putchar);
	return (0);
}
Example #3
0
char		*ft_lltoa(long long n)
{
	char			*tmp;
	int				a;
	int				b;

	b = ft_get_size(n);
	if ((tmp = ft_strnew(b)) == NULL)
		return (NULL);
	a = 1;
	if (n < 0)
	{
		a = -1;
		tmp[0] = '-';
	}
	if (n == 0)
		tmp[0] = '0';
	if (b > 0)
		--b;
	while (n != 0)
	{
		tmp[b] = a * (n % 10) + '0';
		n = n / 10;
		--b;
	}
	return (tmp);
}