ARI fix: sprintf rule.
authorPierre Muller <muller@sourceware.org>
Tue, 14 Apr 2009 19:04:24 +0000 (19:04 +0000)
committerPierre Muller <muller@sourceware.org>
Tue, 14 Apr 2009 19:04:24 +0000 (19:04 +0000)
* ada-exp.y (convert_char_literal): Replace sprintf by xsnprintf.
* ada-lang.c (add_angle_brackets): Use xstrprintf.
(ada_decode): Replace sprintf by xsnprintf.
(find_old_style_renaming_symbol): Ditto.
(ada_to_fixed_type_1, ada_enum_name): Ditto.

gdb/ChangeLog
gdb/ada-exp.y
gdb/ada-lang.c

index 7e40385..59c7470 100644 (file)
@@ -1,3 +1,13 @@
+2009-04-14  Pierre Muller  <muller@ics.u-strasbg.fr>
+
+       ARI fix: sprintf rule.
+       * ada-exp.y (convert_char_literal): Replace sprintf by xsnprintf.
+       * ada-lang.c (add_angle_brackets): Use xstrprintf.
+       (ada_decode): Replace sprintf by xsnprintf.
+       (find_old_style_renaming_symbol): Ditto.
+       (ada_to_fixed_type_1, ada_enum_name): Ditto.
+
+
 2009-04-14  Joel Brobecker  <brobecker@adacore.com>
 
        * target.c (target_mourn_inferior): Call bfd_cache_close_all
index ee0fcf3..1d3c619 100644 (file)
@@ -1452,7 +1452,7 @@ convert_char_literal (struct type *type, LONGEST val)
 
   if (type == NULL || TYPE_CODE (type) != TYPE_CODE_ENUM)
     return val;
-  sprintf (name, "QU%02x", (int) val);
+  xsnprintf (name, sizeof (name), "QU%02x", (int) val);
   for (f = 0; f < TYPE_NFIELDS (type); f += 1)
     {
       if (strcmp (name, TYPE_FIELD_NAME (type, f)) == 0)
index 6fa4cfa..54f2590 100644 (file)
@@ -337,9 +337,7 @@ add_angle_brackets (const char *str)
   static char *result = NULL;
 
   xfree (result);
-  result = (char *) xmalloc ((strlen (str) + 3) * sizeof (char));
-
-  sprintf (result, "<%s>", str);
+  result = xstrprintf ("<%s>", str);
   return result;
 }
 
@@ -1114,7 +1112,7 @@ Suppress:
   if (encoded[0] == '<')
     strcpy (decoded, encoded);
   else
-    sprintf (decoded, "<%s>", encoded);
+    xsnprintf (decoded, decoding_buffer_size, "<%s>", encoded);
   return decoded;
 
 }
@@ -6609,13 +6607,14 @@ find_old_style_renaming_symbol (const char *name, struct block *block)
         function_name = function_name + 5;
 
       rename = (char *) alloca (rename_len * sizeof (char));
-      sprintf (rename, "%s__%s___XR", function_name, name);
+      xsnprintf (rename, rename_len * sizeof (char), "%s__%s___XR", 
+                function_name, name);
     }
   else
     {
       const int rename_len = strlen (name) + 6;
       rename = (char *) alloca (rename_len * sizeof (char));
-      sprintf (rename, "%s___XR", name);
+      xsnprintf (rename, rename_len * sizeof (char), "%s___XR", name);
     }
 
   return ada_find_any_symbol (rename);
@@ -7308,7 +7307,7 @@ ada_to_fixed_type_1 (struct type *type, const gdb_byte *valaddr,
             int xvz_found = 0;
             LONGEST size;
 
-            sprintf (xvz_name, "%s___XVZ", name);
+            xsnprintf (xvz_name, strlen (name) + 7, "%s___XVZ", name);
             size = get_int_var_value (xvz_name, &xvz_found);
             if (xvz_found && TYPE_LENGTH (fixed_record_type) != size)
               {
@@ -7760,11 +7759,11 @@ ada_enum_name (const char *name)
 
       GROW_VECT (result, result_len, 16);
       if (isascii (v) && isprint (v))
-        sprintf (result, "'%c'", v);
+        xsnprintf (result, result_len, "'%c'", v);
       else if (name[1] == 'U')
-        sprintf (result, "[\"%02x\"]", v);
+        xsnprintf (result, result_len, "[\"%02x\"]", v);
       else
-        sprintf (result, "[\"%04x\"]", v);
+        xsnprintf (result, result_len, "[\"%04x\"]", v);
 
       return result;
     }