Make HRealloc() check the return the same way HMalloc() does
git-svn-id: svn://svn.code.sf.net/p/sc2/code/trunk@3230 8092fc87-c524-0410-9efc-e669fe64eaf9
This commit is contained in:
@@ -47,7 +47,8 @@ HMalloc (int size)
|
|||||||
|
|
||||||
if (size < 0)
|
if (size < 0)
|
||||||
{
|
{
|
||||||
log_add (log_Fatal, "Fatal Error: Request for negative amount of memory %d!", size);
|
log_add (log_Fatal, "HMalloc() FATAL: "
|
||||||
|
"request for negative amount of memory %d!", size);
|
||||||
fflush (stderr);
|
fflush (stderr);
|
||||||
explode ();
|
explode ();
|
||||||
}
|
}
|
||||||
@@ -55,7 +56,7 @@ HMalloc (int size)
|
|||||||
p = malloc (size);
|
p = malloc (size);
|
||||||
if (p == NULL)
|
if (p == NULL)
|
||||||
{
|
{
|
||||||
log_add (log_Fatal, "Fatal Error: HMalloc(): out of memory.");
|
log_add (log_Fatal, "HMalloc() FATAL: out of memory.");
|
||||||
fflush (stderr);
|
fflush (stderr);
|
||||||
explode ();
|
explode ();
|
||||||
}
|
}
|
||||||
@@ -85,7 +86,22 @@ HCalloc (int size)
|
|||||||
void *
|
void *
|
||||||
HRealloc (void *p, int size)
|
HRealloc (void *p, int size)
|
||||||
{
|
{
|
||||||
// XXX: We assume throughout that HRealloc returns a valid pointer.
|
if (size < 0)
|
||||||
// Checks similar to HMalloc are needed here.
|
{
|
||||||
return realloc (p, size);
|
log_add (log_Fatal, "HRealloc() FATAL: "
|
||||||
|
"request for negative amount of memory %d!", size);
|
||||||
|
fflush (stderr);
|
||||||
|
explode ();
|
||||||
|
}
|
||||||
|
|
||||||
|
fprintf (stderr, "HRealloc(): reallocing %p to %d\n", p, size);
|
||||||
|
|
||||||
|
p = realloc (p, size);
|
||||||
|
if (!p && size > 0)
|
||||||
|
{
|
||||||
|
log_add (log_Fatal, "HRealloc() FATAL: out of memory.");
|
||||||
|
fflush (stderr);
|
||||||
|
explode ();
|
||||||
|
}
|
||||||
|
return p;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user