fixing the open file arguments in the execv func

This commit is contained in:
Sagi Dayan 2014-03-30 21:34:21 +03:00
parent e0b8e9ddc5
commit 1091e2413f

4
main.c
View file

@ -120,10 +120,10 @@ int main()
{ {
int i_lastArg = getFileNameIndex(args); int i_lastArg = getFileNameIndex(args);
char* fileName = (char *)malloc(strlen(args[i_lastArg])*sizeof(char)); char* fileName = (char *)malloc(strlen(args[i_lastArg])*sizeof(char));
strcpy(fileName, args[i_lastArg]); strcpy(fileName, args[i_lastArg]); //saving file name before cleaning the array
freeRemainderInArr(args, i_lastArg); freeRemainderInArr(args, i_lastArg);
int fd = open(fileName, O_RDWR | O_CREAT, S_IRUSR | S_IWUSR); int fd = open(fileName, O_RDWR | O_CREAT | O_TRUNC);
if(fd >= 0) if(fd >= 0)
{ {
dup2(fd, 1); // make stdout go to file dup2(fd, 1); // make stdout go to file