mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-12-15 22:00:47 +08:00
asan: null pointer as arg 2 of memcpy
Replace xmalloc+memcpy+free with xrealloc, avoiding the asan warning on the initial allocation where we had memcpy(p,0,0). * cg_arcs.c (arc_add): Use xrealloc.
This commit is contained in:
@@ -89,7 +89,7 @@ void
|
||||
arc_add (Sym *parent, Sym *child, unsigned long count)
|
||||
{
|
||||
static unsigned int maxarcs = 0;
|
||||
Arc *arc, **newarcs;
|
||||
Arc *arc;
|
||||
|
||||
DBG (TALLYDEBUG, printf ("[arc_add] %lu arcs from %s to %s\n",
|
||||
count, parent->name, child->name));
|
||||
@@ -124,17 +124,7 @@ arc_add (Sym *parent, Sym *child, unsigned long count)
|
||||
maxarcs = 1;
|
||||
maxarcs *= 2;
|
||||
|
||||
/* Allocate the new array. */
|
||||
newarcs = (Arc **)xmalloc(sizeof (Arc *) * maxarcs);
|
||||
|
||||
/* Copy the old array's contents into the new array. */
|
||||
memcpy (newarcs, arcs, numarcs * sizeof (Arc *));
|
||||
|
||||
/* Free up the old array. */
|
||||
free (arcs);
|
||||
|
||||
/* And make the new array be the current array. */
|
||||
arcs = newarcs;
|
||||
arcs = xrealloc (arcs, sizeof (*arcs) * maxarcs);
|
||||
}
|
||||
|
||||
/* Place this arc in the arc array. */
|
||||
|
||||
Reference in New Issue
Block a user