changeset 45643:5cee84ffef53

(main): Avoid a buffer overrun with sprintf.
author Francesco Potortì <pot@gnu.org>
date Wed, 05 Jun 2002 12:09:29 +0000
parents 13b00ebe25a7
children f5d93bf3ddfb
files lib-src/etags.c
diffstat 1 files changed, 4 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/lib-src/etags.c	Wed Jun 05 07:08:54 2002 +0000
+++ b/lib-src/etags.c	Wed Jun 05 12:09:29 2002 +0000
@@ -33,7 +33,7 @@
  *	Francesco Potort́ <pot@gnu.org> has maintained it since 1993.
  */
 
-char pot_etags_version[] = "@(#) pot revision number is 15.16";
+char pot_etags_version[] = "@(#) pot revision number is $Revision: 15.18 $";
 
 #define	TRUE	1
 #define	FALSE	0
@@ -441,7 +441,7 @@
 static bool globals;		/* create tags for global variables */
 static bool declarations;	/* --declarations: tag them and extern in C&Co*/
 static bool members;		/* create tags for C member variables */
-static bool no_line_directive;	/* ignore #line directives */
+static bool no_line_directive;	/* ignore #line directives (undocumented) */
 static bool update;		/* -u: update tags */
 static bool vgrind_style;	/* -v: create vgrind style index output */
 static bool no_warnings;	/* -w: suppress warnings */
@@ -1254,8 +1254,8 @@
 
   if (update)
     {
-      char cmd[BUFSIZ];
-      sprintf (cmd, "sort -o %s %s", tagfile, tagfile);
+      char cmd[2*BUFSIZ+10];
+      sprintf (cmd, "sort -o %.*s %.*s", BUFSIZ, tagfile, BUFSIZ, tagfile);
       exit (system (cmd));
     }
   return GOOD;