X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=gas%2Foutput-file.c;h=d52fe16506565302ff27ac5f7c57572b178feb12;hb=ee959deb576c46b85b6174626d700e1393256adf;hp=e993033f4812ed967572a25c4ec36acac222afda;hpb=ec2655a6a75bc61d21e6f8ddc1e9f9027a8914dd;p=platform%2Fupstream%2Fbinutils.git diff --git a/gas/output-file.c b/gas/output-file.c index e993033..d52fe16 100644 --- a/gas/output-file.c +++ b/gas/output-file.c @@ -1,6 +1,5 @@ /* output-file.c - Deal with the output file - Copyright 1987, 1990, 1991, 1992, 1993, 1994, 1996, 1998, 1999, 2001, - 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc. + Copyright (C) 1987-2014 Free Software Foundation, Inc. This file is part of GAS, the GNU Assembler. @@ -57,9 +56,12 @@ output_file_close (char *filename) if (stdoutput == NULL) return; - + /* Close the bfd. */ - res = bfd_close (stdoutput); + if (had_errors ()) + res = bfd_cache_close_all (); + else + res = bfd_close (stdoutput); /* Prevent an infinite loop - if the close failed we will call as_fatal which will call xexit() which may call this function again... */