diff --git a/ChangeLog b/ChangeLog index 93919d61784a73abae6764c84612b40ee4db467e..b2b6de1ec80d8eafdedc88fec16c16babebcd68a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2011-03-04 Chris Allegretta <chrisa@asty.org> + * color.c (color_update): Add check for whether the file even exists + before we try to run the magic check on it. Fixes error messages to stderr + when reading in files that don't exist, reported by Mike Frysinger. + 2011-03-03 Chris Allegretta <chrisa@asty.org> * color.c (color_update): Remove unneeded debugging message from libmagic commit. Fixed extra messages going to stderr reported by Mike Frysinger. diff --git a/src/color.c b/src/color.c index 61936213b7f0ff2a6cdd13df62f030b6c44cd493..e5d3348f97396be05bca34a11faec5df53f99c4b 100644 --- a/src/color.c +++ b/src/color.c @@ -131,6 +131,7 @@ void color_update(void) const char *magicstring = NULL; const char *magicerr = NULL; magic_t m; + struct stat fileinfo; #endif /* HAVE_LIBMAGIC */ @@ -160,7 +161,7 @@ void color_update(void) #ifdef HAVE_LIBMAGIC - if (strcmp(openfile->filename,"")) { + if (strcmp(openfile->filename,"") && stat(openfile->filename, &fileinfo) == 0) { m = magic_open(MAGIC_SYMLINK | #ifdef DEBUG MAGIC_DEBUG | MAGIC_CHECK |