diff options
author | tradke <tradke@ebee0441-1374-4afa-a3b5-247f3ba15b9a> | 2005-07-26 15:03:04 +0000 |
---|---|---|
committer | tradke <tradke@ebee0441-1374-4afa-a3b5-247f3ba15b9a> | 2005-07-26 15:03:04 +0000 |
commit | 8bcbcdf8830366b8f789d4e5c3a4dd8514aead14 (patch) | |
tree | e652778fca8d3d079b5f7bdb902294f24ebf83b2 | |
parent | cd0851b03d3adebdd32ea4c95cde4f9f0489130c (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.c | 2 | ||||
-rw-r--r-- | src/Output2D.c | 2 | ||||
-rw-r--r-- | src/RestoreFile.c | 10 |
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); } |