* bucomm.c (get_file_size): Check for negative sizes and issue a
authorNick Clifton <nickc@redhat.com>
Thu, 6 Jan 2011 11:34:28 +0000 (11:34 +0000)
committerNick Clifton <nickc@redhat.com>
Thu, 6 Jan 2011 11:34:28 +0000 (11:34 +0000)
warning message if encountered.

binutils/ChangeLog
binutils/bucomm.c

index e07e37b..7d90a23 100644 (file)
@@ -1,3 +1,8 @@
+2011-01-06  Vladimir Siminov  <sv@sw.ru>
+
+       * bucomm.c (get_file_size): Check for negative sizes and issue a
+       warning message if encountered.
+
 2011-01-01  H.J. Lu  <hongjiu.lu@intel.com>
 
        * version.c (print_version): Update copyright to 2011.
index b30c2c5..77afc10 100644 (file)
@@ -1,6 +1,6 @@
 /* bucomm.c -- Bin Utils COMmon code.
    Copyright 1991, 1992, 1993, 1994, 1995, 1997, 1998, 2000, 2001, 2002,
-   2003, 2005, 2006, 2007, 2008, 2009, 2010
+   2003, 2005, 2006, 2007, 2008, 2009, 2010, 2011
    Free Software Foundation, Inc.
 
    This file is part of GNU Binutils.
@@ -577,6 +577,9 @@ get_file_size (const char * file_name)
     }  
   else if (! S_ISREG (statbuf.st_mode))
     non_fatal (_("Warning: '%s' is not an ordinary file"), file_name);
+  else if (statbuf.st_size < 0)
+    non_fatal (_("Warning: '%s' has negative size, probably it is too large"),
+               file_name);
   else
     return statbuf.st_size;