Esempio n. 1
0
char		*get_next_line(const int fd)
{
  char		*buffer;
  static char	*save = "\0";
  char		*put_this_str;
  int		r;
  t_string	*string;

  string = malloc(sizeof(t_string));
  while (check_backslash(save, '\n') != 0)
    {
      buffer = malloc(sizeof(char) * READ_SIZE + 1);
      if ((r = read(fd, buffer, READ_SIZE)) == -1 || r == 0 || buffer == NULL)
	return (NULL);
      if (r > 0)
	buffer[r] = '\0';
      save = complete_str(save, buffer);
      if (buffer[0] == '\0')
	return (NULL);
      free(buffer);
    }
  my_final_str(string, save);
  put_this_str = string->result;
  save = string->save;
  free(string);
  return (put_this_str);
}
Esempio n. 2
0
void            ps1_checker_1(s_ps1                 ps1_st,
                              bool                  *escaped,
                              bool                  *checked,
                              char                  *number)
{
  check_backslash(ps1_st, escaped, checked);

  check_opbrk(ps1_st, escaped, checked);

  check_clbrk(ps1_st, escaped, checked);

  check_numbers(ps1_st, escaped, checked, number);
}