summaryrefslogtreecommitdiff
path: root/gcc/fix-header.c
diff options
context:
space:
mode:
authorDouglas B Rupp <rupp@gnat.com>2001-11-24 17:17:58 -0500
committerRichard Kenner <kenner@gcc.gnu.org>2001-11-24 17:17:58 -0500
commite1c12209fdd75145b4b34ebaa0bd38dba822eedc (patch)
treec3b740aa1c23a1b4c2f8a1904669710f78b7ee73 /gcc/fix-header.c
parent1dfc53859fcf91234f677869b0e0e10f709444a4 (diff)
downloadgcc-e1c12209fdd75145b4b34ebaa0bd38dba822eedc.tar.gz
fix-header.c (main): Move inf_buffer termination and inf_limit calculation to after read.
* fix-header.c (main): Move inf_buffer termination and inf_limit calculation to after read. From-SVN: r47307
Diffstat (limited to 'gcc/fix-header.c')
-rw-r--r--gcc/fix-header.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/gcc/fix-header.c b/gcc/fix-header.c
index 9b1386a78df..e96b6bb0fec 100644
--- a/gcc/fix-header.c
+++ b/gcc/fix-header.c
@@ -1184,9 +1184,6 @@ main (argc, argv)
}
inf_size = sbuf.st_size;
inf_buffer = (char *) xmalloc (inf_size + 2);
- inf_buffer[inf_size] = '\n';
- inf_buffer[inf_size + 1] = '\0';
- inf_limit = inf_buffer + inf_size;
inf_ptr = inf_buffer;
to_read = inf_size;
@@ -1209,6 +1206,11 @@ main (argc, argv)
close (inf_fd);
+ /* Inf_size may have changed if read was short (as on VMS) */
+ inf_buffer[inf_size] = '\n';
+ inf_buffer[inf_size + 1] = '\0';
+ inf_limit = inf_buffer + inf_size;
+
/* If file doesn't end with '\n', add one. */
if (inf_limit > inf_buffer && inf_limit[-1] != '\n')
inf_limit++;