Correct Scilab output file handling
Fix seg fault when builder file cannot be written. Correct locations of output files when using -outdir - only language specific files are output into the direrctory specified by -outdir.
This commit is contained in:
parent
3ee711d1f4
commit
4f663489fb
1 changed files with 7 additions and 2 deletions
|
|
@ -123,7 +123,7 @@ public:
|
||||||
String *outputFilename = Getattr(node, "outfile");
|
String *outputFilename = Getattr(node, "outfile");
|
||||||
|
|
||||||
/* Initialize I/O */
|
/* Initialize I/O */
|
||||||
beginSection = NewFile(NewStringf("%s%s", SWIG_output_directory(), outputFilename), "w", SWIG_output_files());
|
beginSection = NewFile(outputFilename, "w", SWIG_output_files());
|
||||||
if (!beginSection) {
|
if (!beginSection) {
|
||||||
FileErrorDisplay(outputFilename);
|
FileErrorDisplay(outputFilename);
|
||||||
SWIG_exit(EXIT_FAILURE);
|
SWIG_exit(EXIT_FAILURE);
|
||||||
|
|
@ -213,7 +213,12 @@ public:
|
||||||
Printf(builderCode, "cd(originaldir);\n");
|
Printf(builderCode, "cd(originaldir);\n");
|
||||||
|
|
||||||
Printf(builderCode, "exit");
|
Printf(builderCode, "exit");
|
||||||
builderFile = NewFile(NewStringf("%sbuilder.sce", SWIG_output_directory()), "w", SWIG_output_files());
|
String *builderFilename = NewStringf("%sbuilder.sce", SWIG_output_directory());
|
||||||
|
builderFile = NewFile(builderFilename, "w", SWIG_output_files());
|
||||||
|
if (!builderFile) {
|
||||||
|
FileErrorDisplay(builderFilename);
|
||||||
|
SWIG_exit(EXIT_FAILURE);
|
||||||
|
}
|
||||||
Printv(builderFile, builderCode, NIL);
|
Printv(builderFile, builderCode, NIL);
|
||||||
Delete(builderFile);
|
Delete(builderFile);
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue