Exemplo n.º 1
0
char	*init_read_cmd(char *cmd, t_param *param)
{
  if (mod_raw(param->fd_tty) == EXIT_FAILURE)
    {
      my_putstr("Error mod_raw termcap\n", 2, -1);
      return (NULL);
    }
  my_putstr(param->str_prompt, 1, -1);
  if (SIZE_BUFFER <= 0 ||
      (cmd = malloc(sizeof(char) * SIZE_BUFFER)) == NULL)
    return (NULL);
  my_memset(cmd, SIZE_BUFFER, '\0');
  cmd[0] = '\0';
  param->pos = 0;
  param->pos_history = 0;
  return (cmd);
}
Exemplo n.º 2
0
static char		*my_read_dyn(t_history *list)
{
  struct termios	save;
  struct termios	t;
  char			*cmd;

  if (tcgetattr(0, &save) == -1)
    return (NULL);
  t = save;
  if (mod_raw(&t) == -1)
    return (NULL);
  cmd = loop(list);
  if (tcsetattr(0, TCSANOW, &save) == -1)
    return (NULL);
  my_putchar('\r', 1);
  pars_ps1(g_data->env);
  return (cmd);
}