aboutsummaryrefslogtreecommitdiff
path: root/src/ChooseOutput.c
diff options
context:
space:
mode:
authortradke <tradke@94b1c47f-dcfd-45ef-a468-0854c0e9e350>2000-08-30 10:27:22 +0000
committertradke <tradke@94b1c47f-dcfd-45ef-a468-0854c0e9e350>2000-08-30 10:27:22 +0000
commit65dc866e70b6c37b20a9f504396d04c14cec9a3a (patch)
tree0951b67a4725525b4725589514fc20c5d1178450 /src/ChooseOutput.c
parent050071bd86c370a73c59c2274c6b14f1a50bce04 (diff)
Fixed small memory leak reported by purify.
git-svn-id: http://svn.cactuscode.org/arrangements/CactusBase/IOASCII/trunk@20 94b1c47f-dcfd-45ef-a468-0854c0e9e350
Diffstat (limited to 'src/ChooseOutput.c')
-rw-r--r--src/ChooseOutput.c129
1 files changed, 57 insertions, 72 deletions
diff --git a/src/ChooseOutput.c b/src/ChooseOutput.c
index 81a6ea5..f649270 100644
--- a/src/ChooseOutput.c
+++ b/src/ChooseOutput.c
@@ -40,25 +40,22 @@ CCTK_FILEVERSION(CactusBase_IOASCII_ChooseOutput_c)
void IOASCII_Choose1D(CCTK_ARGUMENTS)
{
DECLARE_CCTK_PARAMETERS
-
int i;
asciiioGH *myGH; /* IOASCII extension handle */
- int **origin_index; /* Specify output lines with indices */
- CCTK_REAL **origin_phys; /* Specify output lines with coordinates */
+ int *origin_index[3]; /* Specify output lines with indices */
+ CCTK_REAL *origin_phys[3]; /* Specify output lines with coordinates */
+
- myGH = (asciiioGH *) cctkGH->extensions
- [CCTK_GHExtensionHandle ("IOASCII")];
+ myGH = (asciiioGH *) cctkGH->extensions[CCTK_GHExtensionHandle ("IOASCII")];
/* Set up lines to be output */
- origin_phys = (CCTK_REAL **)malloc(3*sizeof(CCTK_REAL *));
- origin_phys[0] = (CCTK_REAL *)malloc(3*sizeof(CCTK_REAL ));
- origin_phys[1] = (CCTK_REAL *)malloc(3*sizeof(CCTK_REAL ));
- origin_phys[2] = (CCTK_REAL *)malloc(3*sizeof(CCTK_REAL ));
+ origin_phys[0] = (CCTK_REAL *) malloc (3*3 * sizeof (CCTK_REAL));
+ origin_phys[1] = origin_phys[0] + 3;
+ origin_phys[2] = origin_phys[1] + 3;
- origin_index = (int **)malloc(3*sizeof(int *));
- origin_index[0] = (int *)malloc(3*sizeof(int ));
- origin_index[1] = (int *)malloc(3*sizeof(int ));
- origin_index[2] = (int *)malloc(3*sizeof(int ));
+ origin_index[0] = (int *) malloc (3*3 * sizeof (int));
+ origin_index[1] = origin_index[0] + 3;
+ origin_index[2] = origin_index[1] + 3;
/* Set parameters using
1. Indices from IOASCII
@@ -68,63 +65,61 @@ void IOASCII_Choose1D(CCTK_ARGUMENTS)
*/
/* x-lines */
- if (CCTK_ParameterQueryTimesSet("out1D_xline_yi","IOASCII")>0)
+ if (CCTK_ParameterQueryTimesSet ("out1D_xline_yi", "IOASCII") > 0)
{
- origin_index[0][1] = out1D_xline_yi;
+ origin_index[0][1] = out1D_xline_yi;
}
- else if (CCTK_ParameterQueryTimesSet("out_xline_yi","IOUtil")>0)
+ else if (CCTK_ParameterQueryTimesSet ("out_xline_yi", "IOUtil") > 0)
{
- origin_index[0][1] = out_xline_yi;
+ origin_index[0][1] = out_xline_yi;
}
else
{
- origin_index[0][1] = -1;
- if (CCTK_ParameterQueryTimesSet("out1D_xline_y","IOASCII")>0)
+ origin_index[0][1] = -1;
+ if (CCTK_ParameterQueryTimesSet ("out1D_xline_y", "IOASCII") > 0)
{
- origin_phys[0][1] = out1D_xline_y;
+ origin_phys[0][1] = out1D_xline_y;
}
else
{
- origin_phys[0][1] = out_xline_y;
+ origin_phys[0][1] = out_xline_y;
}
}
- if (CCTK_ParameterQueryTimesSet("out1D_xline_zi","IOASCII")>0)
+ if (CCTK_ParameterQueryTimesSet ("out1D_xline_zi", "IOASCII") > 0)
{
- origin_index[0][2] = out1D_xline_zi;
+ origin_index[0][2] = out1D_xline_zi;
}
- else if (CCTK_ParameterQueryTimesSet("out_xline_zi","IOUtil")>0)
+ else if (CCTK_ParameterQueryTimesSet ("out_xline_zi", "IOUtil") > 0)
{
- origin_index[0][2] = out_xline_zi;
+ origin_index[0][2] = out_xline_zi;
}
else
{
origin_index[0][2] = -1;
- if (CCTK_ParameterQueryTimesSet("out1D_xline_z","IOASCII")>0)
+ if (CCTK_ParameterQueryTimesSet ("out1D_xline_z", "IOASCII") > 0)
{
- origin_phys[0][2] = out1D_xline_z;
+ origin_phys[0][2] = out1D_xline_z;
}
else
{
- origin_phys[0][2] = out_xline_z;
+ origin_phys[0][2] = out_xline_z;
}
}
-
-
/* y-lines */
- if (CCTK_ParameterQueryTimesSet("out1D_yline_xi","IOASCII")>0)
+ if (CCTK_ParameterQueryTimesSet ("out1D_yline_xi", "IOASCII") > 0)
{
origin_index[1][0] = out1D_yline_xi;
}
- else if (CCTK_ParameterQueryTimesSet("out_yline_xi","IOUtil")>0)
+ else if (CCTK_ParameterQueryTimesSet ("out_yline_xi", "IOUtil") > 0)
{
origin_index[1][0] = out_yline_xi;
}
else
{
origin_index[1][0] = -1;
- if (CCTK_ParameterQueryTimesSet("out1D_yline_x","IOASCII")>0)
+ if (CCTK_ParameterQueryTimesSet ("out1D_yline_x", "IOASCII") > 0)
{
origin_phys[1][0] = out1D_yline_x;
}
@@ -134,18 +129,18 @@ void IOASCII_Choose1D(CCTK_ARGUMENTS)
}
}
- if (CCTK_ParameterQueryTimesSet("out1D_yline_zi","IOASCII")>0)
+ if (CCTK_ParameterQueryTimesSet ("out1D_yline_zi", "IOASCII") > 0)
{
origin_index[1][2] = out1D_yline_zi;
}
- else if (CCTK_ParameterQueryTimesSet("out_yline_zi","IOUtil")>0)
+ else if (CCTK_ParameterQueryTimesSet ("out_yline_zi", "IOUtil") > 0)
{
origin_index[1][2] = out_yline_zi;
}
else
{
origin_index[1][2] = -1;
- if (CCTK_ParameterQueryTimesSet("out1D_yline_z","IOASCII")>0)
+ if (CCTK_ParameterQueryTimesSet ("out1D_yline_z", "IOASCII") > 0)
{
origin_phys[1][2] = out1D_yline_z;
}
@@ -156,18 +151,18 @@ void IOASCII_Choose1D(CCTK_ARGUMENTS)
}
/* z-lines */
- if (CCTK_ParameterQueryTimesSet("out1D_zline_xi","IOASCII")>0)
+ if (CCTK_ParameterQueryTimesSet ("out1D_zline_xi", "IOASCII") > 0)
{
origin_index[2][0] = out1D_zline_xi;
}
- else if (CCTK_ParameterQueryTimesSet("out_zline_xi","IOUtil")>0)
+ else if (CCTK_ParameterQueryTimesSet ("out_zline_xi", "IOUtil") > 0)
{
origin_index[2][0] = out_zline_xi;
}
else
{
origin_index[2][0] = -1;
- if (CCTK_ParameterQueryTimesSet("out1D_zline_x","IOASCII")>0)
+ if (CCTK_ParameterQueryTimesSet ("out1D_zline_x", "IOASCII") > 0)
{
origin_phys[2][0] = out1D_zline_x;
}
@@ -177,18 +172,18 @@ void IOASCII_Choose1D(CCTK_ARGUMENTS)
}
}
- if (CCTK_ParameterQueryTimesSet("out1D_zline_yi","IOASCII")>0)
+ if (CCTK_ParameterQueryTimesSet ("out1D_zline_yi", "IOASCII") > 0)
{
origin_index[2][1] = out1D_zline_yi;
}
- else if (CCTK_ParameterQueryTimesSet("out_zline_yi","IOUtil")>0)
+ else if (CCTK_ParameterQueryTimesSet ("out_zline_yi", "IOUtil") > 0)
{
origin_index[2][1] = out_zline_yi;
}
else
{
origin_index[2][1] = -1;
- if (CCTK_ParameterQueryTimesSet("out1D_zline_y","IOASCII")>0)
+ if (CCTK_ParameterQueryTimesSet ("out1D_zline_y", "IOASCII") > 0)
{
origin_phys[2][1] = out1D_zline_y;
}
@@ -198,12 +193,13 @@ void IOASCII_Choose1D(CCTK_ARGUMENTS)
}
}
- for (i=1;i<=CCTK_MaxDim();i++)
+ for (i = 1; i <= CCTK_MaxDim(); i++)
{
- IOUtil_1DLines (cctkGH, i, origin_index,
- origin_phys, myGH->spxyz[i-1]);
+ IOUtil_1DLines (cctkGH, i, origin_index, origin_phys, myGH->spxyz[i-1]);
}
- return;
+
+ free (origin_phys[0]);
+ free (origin_index[0]);
}
@@ -225,38 +221,32 @@ void IOASCII_Choose1D(CCTK_ARGUMENTS)
void IOASCII_Choose2D(CCTK_ARGUMENTS)
{
DECLARE_CCTK_PARAMETERS
-
int i;
asciiioGH *myGH; /* IOASCII extension handle */
- int *origin_index; /* Specify output planes by indices */
- CCTK_REAL *origin_phys; /* Specify output planes by coordinates */
+ int origin_index[3]; /* Specify output planes by indices */
+ CCTK_REAL origin_phys[3]; /* Specify output planes by coordinates */
- myGH = (asciiioGH *) cctkGH->extensions
- [CCTK_GHExtensionHandle ("IOASCII")];
- /* Set up lines to be output */
- origin_phys = (CCTK_REAL *)malloc(3*sizeof(CCTK_REAL ));
- origin_index = (int *)malloc(3*sizeof(int ));
-
+ myGH = (asciiioGH *) cctkGH->extensions[CCTK_GHExtensionHandle ("IOASCII")];
+
/* Set parameters using
1. Indices from IOASCII
2. Indices from IOUtil
3. Coords from IOASCII
4. Coords from IOUtil
*/
-
- if (CCTK_ParameterQueryTimesSet("out2D_yzplane_xi","IOASCII")>0)
+ if (CCTK_ParameterQueryTimesSet ("out2D_yzplane_xi", "IOASCII") > 0)
{
origin_index[0] = out2D_yzplane_xi;
}
- else if (CCTK_ParameterQueryTimesSet("out_yzplane_xi","IOUtil")>0)
+ else if (CCTK_ParameterQueryTimesSet ("out_yzplane_xi", "IOUtil") > 0)
{
origin_index[0] = out_yzplane_xi;
}
else
{
origin_index[0] = -1;
- if (CCTK_ParameterQueryTimesSet("out2D_yzplane_x","IOASCII")>0)
+ if (CCTK_ParameterQueryTimesSet ("out2D_yzplane_x", "IOASCII") > 0)
{
origin_phys[0] = out2D_yzplane_x;
}
@@ -266,18 +256,18 @@ void IOASCII_Choose2D(CCTK_ARGUMENTS)
}
}
- if (CCTK_ParameterQueryTimesSet("out2D_xzplane_yi","IOASCII")>0)
+ if (CCTK_ParameterQueryTimesSet ("out2D_xzplane_yi", "IOASCII") > 0)
{
origin_index[1] = out2D_xzplane_yi;
}
- else if (CCTK_ParameterQueryTimesSet("out_xzplane_yi","IOUtil")>0)
+ else if (CCTK_ParameterQueryTimesSet ("out_xzplane_yi", "IOUtil") > 0)
{
origin_index[1] = out_xzplane_yi;
}
else
{
origin_index[1] = -1;
- if (CCTK_ParameterQueryTimesSet("out2D_xzplane_y","IOASCII")>0)
+ if (CCTK_ParameterQueryTimesSet ("out2D_xzplane_y", "IOASCII") > 0)
{
origin_phys[1] = out2D_xzplane_y;
}
@@ -287,18 +277,18 @@ void IOASCII_Choose2D(CCTK_ARGUMENTS)
}
}
- if (CCTK_ParameterQueryTimesSet("out2D_xyplane_zi","IOASCII")>0)
+ if (CCTK_ParameterQueryTimesSet ("out2D_xyplane_zi", "IOASCII") > 0)
{
origin_index[2] = out2D_xyplane_zi;
}
- else if (CCTK_ParameterQueryTimesSet("out_xyplane_zi","IOUtil")>0)
+ else if (CCTK_ParameterQueryTimesSet ("out_xyplane_zi", "IOUtil") > 0)
{
origin_index[2] = out_xyplane_zi;
}
else
{
origin_index[2] = -1;
- if (CCTK_ParameterQueryTimesSet("out2D_xyplane_z","IOASCII")>0)
+ if (CCTK_ParameterQueryTimesSet ("out2D_xyplane_z", "IOASCII") > 0)
{
origin_phys[2] = out2D_xyplane_z;
}
@@ -308,13 +298,8 @@ void IOASCII_Choose2D(CCTK_ARGUMENTS)
}
}
- for (i=1;i<=CCTK_MaxDim();i++)
+ for (i = 1; i <= CCTK_MaxDim(); i++)
{
- IOUtil_2DPlanes (cctkGH, i, origin_index,
- origin_phys, myGH->sp2xyz[i-1]);
+ IOUtil_2DPlanes (cctkGH, i, origin_index, origin_phys, myGH->sp2xyz[i-1]);
}
-
- return;
}
-
-