aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDodji Seketeli <dodji@redhat.com>2014-01-24 15:34:03 +0000
committerDodji Seketeli <dodji@gcc.gnu.org>2014-01-24 16:34:03 +0100
commit317363b4c15062c196316f3df87d6204bc26b06f (patch)
tree4a0d530478e4a3581cd9b8579761fcf864874518
parentf27ad2b2201c1a05bf6ef048960ebb8b98d6e0e8 (diff)
downloadgcc-317363b4c15062c196316f3df87d6204bc26b06f.zip
gcc-317363b4c15062c196316f3df87d6204bc26b06f.tar.gz
gcc-317363b4c15062c196316f3df87d6204bc26b06f.tar.bz2
Avoid crashing when an input file could not be opened
* input.c (add_file_to_cache_tab): Handle the case where fopen returns NULL. Signed-off-by: Dodji Seketeli <dodji@seketeli.org> From-SVN: r207046
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/input.c7
2 files changed, 7 insertions, 5 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index cdbedad..7feb332 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2014-01-24 Dodji Seketeli <dodji@redhat.com>
+
+ * input.c (add_file_to_cache_tab): Handle the case where fopen
+ returns NULL.
+
2014-01-23 H.J. Lu <hongjiu.lu@intel.com>
PR target/59929
diff --git a/gcc/input.c b/gcc/input.c
index 290680c..547c177 100644
--- a/gcc/input.c
+++ b/gcc/input.c
@@ -293,11 +293,8 @@ add_file_to_cache_tab (const char *file_path)
{
FILE *fp = fopen (file_path, "r");
- if (ferror (fp))
- {
- fclose (fp);
- return NULL;
- }
+ if (fp == NULL)
+ return NULL;
unsigned highest_use_count = 0;
fcache *r = evicted_cache_tab_entry (&highest_use_count);