aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortradke <tradke@ebee0441-1374-4afa-a3b5-247f3ba15b9a>2005-07-26 15:03:04 +0000
committertradke <tradke@ebee0441-1374-4afa-a3b5-247f3ba15b9a>2005-07-26 15:03:04 +0000
commit8bcbcdf8830366b8f789d4e5c3a4dd8514aead14 (patch)
treee652778fca8d3d079b5f7bdb902294f24ebf83b2
parentcd0851b03d3adebdd32ea4c95cde4f9f0489130c (diff)
Fixed small memory when using Util_snprintf().
git-svn-id: http://svn.cactuscode.org/arrangements/CactusPUGHIO/IOFlexIO/trunk@337 ebee0441-1374-4afa-a3b5-247f3ba15b9a
-rw-r--r--src/Output.c2
-rw-r--r--src/Output2D.c2
-rw-r--r--src/RestoreFile.c10
3 files changed, 13 insertions, 1 deletions
diff --git a/src/Output.c b/src/Output.c
index f8698d0..34aa648 100644
--- a/src/Output.c
+++ b/src/Output.c
@@ -345,7 +345,9 @@ void IOFlexIO_CheckSteerableParameters (const cGH *GH, flexioGH *myGH)
}
else
{
+ char *tmp = msg;
Util_asprintf (&msg, "%s, '%s'", msg, fullname);
+ free (tmp);
}
free (fullname);
}
diff --git a/src/Output2D.c b/src/Output2D.c
index 4f1ee8e..0cc6234 100644
--- a/src/Output2D.c
+++ b/src/Output2D.c
@@ -306,7 +306,9 @@ void IOFlexIO_CheckSteerableParameters2D (flexioGH *myGH)
}
else
{
+ char *tmp = msg;
Util_asprintf (&msg, "%s, '%s'", msg, fullname);
+ free (tmp);
}
free (fullname);
}
diff --git a/src/RestoreFile.c b/src/RestoreFile.c
index 579576a..1867caa 100644
--- a/src/RestoreFile.c
+++ b/src/RestoreFile.c
@@ -404,7 +404,7 @@ static int GetCommonAttributes (cGH *GH, IOFile fid, int unchunked, int *vindex,
cGroupDynamicData group_dynamic_data;
CCTK_INT4 grouptype_stored, numtimelevels_stored, timelevel_stored,
iteration_stored;
- char *groupname, *msg;
+ char *groupname, *msg, *oldmsg;
const int *dims;
int dims_stored[MAXDIM];
char fullname[512], groupname_stored[512];
@@ -595,16 +595,24 @@ static int GetCommonAttributes (cGH *GH, IOFile fid, int unchunked, int *vindex,
fullname, dims_stored[0]);
for (i = 1; i < group_static_data.dim; i++)
{
+ oldmsg = msg;
Util_asprintf (&msg, "%s, %d", msg, dims_stored[i]);
+ free (oldmsg);
}
dims = unchunked ? group_dynamic_data.gsh : group_dynamic_data.lsh;
+ oldmsg = msg;
Util_asprintf (&msg, "%s), expected (%d", msg,
dims[group_static_data.dim - 1]);
+ free (oldmsg);
for (i = 1; i < group_static_data.dim; i++)
{
+ oldmsg = msg;
Util_asprintf (&msg, "%s, %d", msg, dims[group_static_data.dim-i-1]);
+ free (oldmsg);
}
+ oldmsg = msg;
Util_asprintf (&msg, "%s)", msg);
+ free (oldmsg);
CCTK_VWarn (2, __LINE__, __FILE__, CCTK_THORNSTRING, msg);
free (msg);
}