Use stat() instead of open() + fstat()

This commit is contained in:
sin 2014-10-22 14:33:00 +01:00
parent 5aceade801
commit ef7082b691

12
noice.c
View file

@ -493,7 +493,6 @@ begin:
char *pathnew; char *pathnew;
char *name; char *name;
char *bin; char *bin;
int fd;
char *dir; char *dir;
char *tmp; char *tmp;
regex_t re; regex_t re;
@ -583,14 +582,7 @@ nochange:
DPRINTF_S(pathnew); DPRINTF_S(pathnew);
/* Get path info */ /* Get path info */
fd = open(pathnew, O_RDONLY | O_NONBLOCK); r = stat(pathnew, &sb);
if (fd == -1) {
printwarn();
free(pathnew);
goto nochange;
}
r = fstat(fd, &sb);
close(fd);
if (r == -1) { if (r == -1) {
printwarn(); printwarn();
free(pathnew); free(pathnew);
@ -619,11 +611,9 @@ nochange:
free(pathnew); free(pathnew);
goto nochange; goto nochange;
} }
exitcurses(); exitcurses();
spawn(bin, pathnew); spawn(bin, pathnew);
initcurses(); initcurses();
free(pathnew); free(pathnew);
goto redraw; goto redraw;
} }