예제 #1
0
파일: ft_filter.c 프로젝트: kawuun/ft_ls
void			ft_sort(t_item *inf, int len, t_als *arg)
{
	int			i;
	t_spec		r;
	t_spec		l;

	i = 1;
	while (i < len)
	{
		r = (arg->u == 1 ? inf[i - 1].fi->st_atimespec :
			inf[i - 1].fi->st_mtimespec);
		l = (arg->u == 1 ? inf[i].fi->st_atimespec : inf[i].fi->st_mtimespec);
		if (ft_sort_t(r, l, &inf[i - 1], &inf[i]))
			i = 1;
		else
			i++;
	}
}
예제 #2
0
파일: ft_listdir.c 프로젝트: ptitmax/42
t_infos	*ft_sort(t_infos *llist, t_infos *node, int option)
{
	if (option & FLAG_F)
		return (ft_pushback(llist, node));
	if (option & FLAG_R)
	{
		if (option & FLAG_CAP_S)
			return (ft_sort_cap_sr(llist, node));
		else if (option & FLAG_T)
			return (ft_sort_rt(llist, node));
		else
			return (ft_sort_ar(llist, node));
	}
	else
	{
		if (option & FLAG_CAP_S)
			return (ft_sort_cap_s(llist, node));
		else if (option & FLAG_T)
			return (ft_sort_t(llist, node));
		else
			return (ft_sort_a(llist, node));
	}
}