OSDN Git Service

* input-file.c (input_file_open): Check fgets return.
authoramodra <amodra>
Fri, 12 Jan 2007 03:14:01 +0000 (03:14 +0000)
committeramodra <amodra>
Fri, 12 Jan 2007 03:14:01 +0000 (03:14 +0000)
gas/ChangeLog
gas/input-file.c

index b3afb4b..58478b4 100644 (file)
@@ -1,3 +1,7 @@
+2007-01-12  Alan Modra  <amodra@bigpond.net.au>
+
+       * input-file.c (input_file_open): Check fgets return.
+
 2007-01-11  Paul Brook  <paul@codesourcery.com>
 
        * config/tc-arm.c (do_t_add_sub): Use Rd and Rs.
index 91ec530..0907bad 100644 (file)
@@ -163,8 +163,8 @@ input_file_open (char *filename, /* "" means use stdin. Must not be 0.  */
       c = getc (f_in);
       if (c == 'N')
        {
-         fgets (buf, 80, f_in);
-         if (!strncmp (buf, "O_APP", 5) && ISSPACE (buf[5]))
+         if (fgets (buf, sizeof (buf), f_in)
+             && !strncmp (buf, "O_APP", 5) && ISSPACE (buf[5]))
            preprocess = 0;
          if (!strchr (buf, '\n'))
            ungetc ('#', f_in); /* It was longer.  */
@@ -173,8 +173,8 @@ input_file_open (char *filename, /* "" means use stdin. Must not be 0.  */
        }
       else if (c == 'A')
        {
-         fgets (buf, 80, f_in);
-         if (!strncmp (buf, "PP", 2) && ISSPACE (buf[2]))
+         if (fgets (buf, sizeof (buf), f_in)
+             && !strncmp (buf, "PP", 2) && ISSPACE (buf[2]))
            preprocess = 1;
          if (!strchr (buf, '\n'))
            ungetc ('#', f_in);