exgs / oh_my_minishell

42seoul minishell
2 stars 1 forks source link

Fix leaks problem '|' '||' also norm check #84

Closed exgs closed 3 years ago

exgs commented 3 years ago

"|", "||" 의 메모리 릭을 잡음

특징

  1. v->flag_pipe 를 사용하지않음.
  2. char ft_strdup_by_index(char str, int start, int end) 에서 if (start == end) ft_strdup("") 를 삭제함.

get_param()->semi_array 처럼 buff 에 나누는 기능을하는 파이프의 인덱스 번호를 넘겨주는 것으로 보임. 다만 "|" 의 경우 에는 나눠지는 기능을 하는 파이프로 보기 어려운데 pipe_num = 1 을 값으로 가짐 이 경우에는 이후에 아마 2번에서 return (ft_strdup(""))으로 써주었다면 합당한 처리를 해주는 것으로 보이나, "|||" "||"의 경우에 문제가 생김 예를들면, "||" 의 경우에도 pipe_num = 1 을 값으로 가짐 그래서 나는 두 경우 모두 자르는 기능을 하는 파이프가 아니라고 생각해서 buff에 담아두지 않는식으로 코드를 바꾸어보았음

exgs commented 3 years ago

설명 Edit하고 다시썻음