diff options
-rw-r--r-- | src/openscad.cc | 16 | ||||
-rw-r--r-- | tests/CMakeLists.txt | 6 |
2 files changed, 11 insertions, 11 deletions
diff --git a/src/openscad.cc b/src/openscad.cc index 82afc16..49ec31c 100644 --- a/src/openscad.cc +++ b/src/openscad.cc @@ -86,14 +86,16 @@ using boost::is_any_of; class Echostream : public std::ofstream { public: - Echostream( const char * filename ) : std::ofstream( filename ) - { + Echostream( const char * filename ) : std::ofstream( filename ) { set_output_handler( &Echostream::output, this ); } static void output( const std::string &msg, void *userdata ) { Echostream *thisp = static_cast<Echostream*>(userdata); *thisp << msg << "\n"; } + ~Echostream() { + this->close(); + } }; static void help(const char *progname) @@ -189,7 +191,7 @@ Camera get_camera( po::variables_map vm ) return camera; } -int cmdline( const char* deps_output_file, const char* filename, Camera &camera, const char *output_file, fs::path original_path, Render::type renderer, char ** argv, bool echo ) +int cmdline( const char* deps_output_file, const char* filename, Camera &camera, const char *output_file, fs::path original_path, Render::type renderer, char ** argv ) { parser_init(boosty::stringy(boost::filesystem::path( argv[0] ).parent_path())); Tree tree; @@ -228,9 +230,9 @@ int cmdline( const char* deps_output_file, const char* filename, Camera &camera, #if 0 && DEBUG top_ctx.dump(NULL, NULL); #endif - - Echostream *echostream; - if (echo_output_file) echostream = new Echostream( echo_output_file ); + shared_ptr<Echostream> echostream; + if (echo_output_file) + echostream.reset( new Echostream( echo_output_file ) ); FileModule *root_module; ModuleInstantiation root_inst("group"); @@ -270,8 +272,6 @@ int cmdline( const char* deps_output_file, const char* filename, Camera &camera, tree.setRoot(root_node); - if (echostream) echostream->close(); - if (csg_output_file) { fs::current_path(original_path); std::ofstream fstream(csg_output_file); diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index 61a3520..1c9eb9a 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -40,8 +40,8 @@ set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}") # Build debug build as default if(NOT CMAKE_BUILD_TYPE) -# set(CMAKE_BUILD_TYPE RelWithDebInfo) - set(CMAKE_BUILD_TYPE Release) + set(CMAKE_BUILD_TYPE RelWithDebInfo) +# set(CMAKE_BUILD_TYPE Release) endif() if(CMAKE_COMPILER_IS_GNUCXX) @@ -898,7 +898,7 @@ add_cmdline_test(csgtermtest EXE ${OPENSCAD_BINPATH} ARGS -o SUFFIX term FILES ${CMAKE_SOURCE_DIR}/../testdata/scad/misc/allfunctions.scad ${CMAKE_SOURCE_DIR}/../testdata/scad/misc/allmodules.scad) add_cmdline_test(echotest EXE ${OPENSCAD_BINPATH} ARGS -o SUFFIX echo FILES ${ECHO_FILES}) -add_cmdline_test(dumptest EXE ${OPENSCAD_BINPATH} ARGS -o dump SUFFIX csg FILES ${DUMPTEST_FILES}) +add_cmdline_test(dumptest EXE ${OPENSCAD_BINPATH} ARGS -o SUFFIX csg FILES ${DUMPTEST_FILES}) add_cmdline_test(cgalpngtest EXE ${OPENSCAD_BINPATH} ARGS --render -o SUFFIX png FILES ${CGALPNGTEST_FILES}) add_cmdline_test(opencsgtest EXE ${OPENSCAD_BINPATH} ARGS -o SUFFIX png FILES ${OPENCSGTEST_FILES}) add_cmdline_test(throwntogethertest EXE ${OPENSCAD_BINPATH} ARGS --preview=throwntogether -o SUFFIX png FILES ${THROWNTOGETHERTEST_FILES}) |