X-Git-Url: https://git.saurik.com/bison.git/blobdiff_plain/053658d584be36c9332f7bad2404495019635253..eab522e49ab693a1be6792f0febb69acfa6e99c9:/src/files.c diff --git a/src/files.c b/src/files.c index ce65c6c1..1c1ccf95 100644 --- a/src/files.c +++ b/src/files.c @@ -1,6 +1,6 @@ /* Open and close files for Bison. - Copyright (C) 1984, 1986, 1989, 1992, 2000, 2001, 2002 + Copyright (C) 1984, 1986, 1989, 1992, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. @@ -17,8 +17,8 @@ You should have received a copy of the GNU General Public License along with Bison; see the file COPYING. If not, write to the Free - Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA - 02111-1307, USA. */ + Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA + 02110-1301, USA. */ #include "system.h" @@ -26,11 +26,13 @@ #include #include #include +#include #include "complain.h" #include "files.h" #include "getargs.h" #include "gram.h" +#include "stdio-safer.h" /* From basename.c. Almost a lie, as it returns a char *. */ const char *base_name (char const *name); @@ -64,9 +66,9 @@ static char *full_base_name = NULL; char *short_base_name = NULL; /* C source file extension (the parser source). */ -const char *src_extension = NULL; +static char const *src_extension = NULL; /* Header file extension (if option ``-d'' is specified). */ -const char *header_extension = NULL; +static char const *header_extension = NULL; /*-----------------------------------------------------------------. | Return a newly allocated string composed of the concatenation of | @@ -94,7 +96,7 @@ xfopen (const char *name, const char *mode) { FILE *ptr; - ptr = fopen (name, mode); + ptr = fopen_safer (name, mode); if (!ptr) error (EXIT_FAILURE, get_errno (), _("cannot open file `%s'"), name); @@ -140,7 +142,7 @@ tr (const char *in, char from, char to) return (temp); } -/* Computes extensions from the grammar file extension. */ +/* Compute extensions from the grammar file extension. */ static void compute_exts_from_gf (const char *ext) { @@ -150,7 +152,7 @@ compute_exts_from_gf (const char *ext) header_extension = tr (header_extension, 'Y', 'H'); } -/* Computes extensions from the given c source file extension. */ +/* Compute extensions from the given c source file extension. */ static void compute_exts_from_src (const char *ext) { @@ -215,8 +217,6 @@ filename_split (const char *filename, } -/* FIXME: Should use xstrndup. */ - static void compute_base_names (void) { @@ -280,7 +280,7 @@ compute_base_names (void) + strlen (TAB_EXT) + 1); stpcpy (stpcpy (full_base_name, short_base_name), TAB_EXT); - /* Computes the extensions from the grammar file name. */ + /* Compute the extensions from the grammar file name. */ filename_split (grammar_file, &base, &tab, &ext); if (ext && !yacc_flag) compute_exts_from_gf (ext);