Refactored closing/opening of output file
This commit is contained in:
@@ -819,13 +819,13 @@ int DLLEXPORT EN_closeQ(EN_Project p)
|
|||||||
if (!p->Openflag) return 102;
|
if (!p->Openflag) return 102;
|
||||||
closequal(p);
|
closequal(p);
|
||||||
p->quality.OpenQflag = FALSE;
|
p->quality.OpenQflag = FALSE;
|
||||||
/*
|
|
||||||
if (p->outfile.OutFile != NULL)
|
if (p->outfile.OutFile != NULL)
|
||||||
{
|
{
|
||||||
fclose(p->outfile.OutFile);
|
fclose(p->outfile.OutFile);
|
||||||
p->outfile.OutFile = NULL;
|
p->outfile.OutFile = NULL;
|
||||||
}
|
}
|
||||||
*/
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -49,7 +49,11 @@ int openfiles(Project *pr, const char *f1, const char *f2, const char *f3)
|
|||||||
strncpy(pr->report.Rpt1Fname, f2, MAXFNAME);
|
strncpy(pr->report.Rpt1Fname, f2, MAXFNAME);
|
||||||
strncpy(pr->outfile.OutFname, f3, MAXFNAME);
|
strncpy(pr->outfile.OutFname, f3, MAXFNAME);
|
||||||
if (strlen(f3) > 0) pr->outfile.Outflag = SAVE;
|
if (strlen(f3) > 0) pr->outfile.Outflag = SAVE;
|
||||||
else pr->outfile.Outflag = SCRATCH;
|
else
|
||||||
|
{
|
||||||
|
pr->outfile.Outflag = SCRATCH;
|
||||||
|
strcpy(pr->outfile.OutFname, pr->TmpOutFname);
|
||||||
|
}
|
||||||
|
|
||||||
// Check that file names are not identical
|
// Check that file names are not identical
|
||||||
if (strlen(f1) > 0 && (strcomp(f1, f2) || strcomp(f1, f3))) return 301;
|
if (strlen(f1) > 0 && (strcomp(f1, f2) || strcomp(f1, f3))) return 301;
|
||||||
@@ -181,6 +185,7 @@ int openoutfile(Project *pr)
|
|||||||
|
|
||||||
// If output file name was supplied, then attempt to
|
// If output file name was supplied, then attempt to
|
||||||
// open it. Otherwise open a temporary output file.
|
// open it. Otherwise open a temporary output file.
|
||||||
|
/*
|
||||||
if (pr->outfile.Outflag == SAVE)
|
if (pr->outfile.Outflag == SAVE)
|
||||||
{
|
{
|
||||||
pr->outfile.OutFile = fopen(pr->outfile.OutFname, "w+b");
|
pr->outfile.OutFile = fopen(pr->outfile.OutFname, "w+b");
|
||||||
@@ -192,6 +197,9 @@ int openoutfile(Project *pr)
|
|||||||
pr->outfile.OutFile = fopen(pr->outfile.OutFname, "w+b");
|
pr->outfile.OutFile = fopen(pr->outfile.OutFname, "w+b");
|
||||||
if (pr->outfile.OutFile == NULL) errcode = 304;
|
if (pr->outfile.OutFile == NULL) errcode = 304;
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
|
pr->outfile.OutFile = fopen(pr->outfile.OutFname, "w+b");
|
||||||
|
if (pr->outfile.OutFile == NULL) errcode = 304;
|
||||||
|
|
||||||
// Save basic network data & energy usage results
|
// Save basic network data & energy usage results
|
||||||
ERRCODE(savenetdata(pr));
|
ERRCODE(savenetdata(pr));
|
||||||
|
|||||||
@@ -545,7 +545,7 @@ int writeresults(Project *pr)
|
|||||||
if (nnv == 0 && nlv == 0) return errcode;
|
if (nnv == 0 && nlv == 0) return errcode;
|
||||||
|
|
||||||
// Return if no output file
|
// Return if no output file
|
||||||
// if (outFile == NULL) outFile = fopen(pr->outfile.OutFname, "r+b");
|
if (outFile == NULL) outFile = fopen(pr->outfile.OutFname, "rb");
|
||||||
if (outFile == NULL) return 106;
|
if (outFile == NULL) return 106;
|
||||||
|
|
||||||
// Allocate memory for output variables:
|
// Allocate memory for output variables:
|
||||||
@@ -587,14 +587,14 @@ int writeresults(Project *pr)
|
|||||||
time->Htime += time->Rstep;
|
time->Htime += time->Rstep;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
/*
|
|
||||||
// Free output file
|
// Free output file
|
||||||
if (outFile != NULL)
|
if (outFile != NULL)
|
||||||
{
|
{
|
||||||
fclose(outFile);
|
fclose(outFile);
|
||||||
outFile = NULL;
|
outFile = NULL;
|
||||||
}
|
}
|
||||||
*/
|
|
||||||
// Free allocated memory
|
// Free allocated memory
|
||||||
for (j = 0; j < m; j++) free(x[j]);
|
for (j = 0; j < m; j++) free(x[j]);
|
||||||
free(x);
|
free(x);
|
||||||
|
|||||||
Reference in New Issue
Block a user