diff --git a/src/libslic3r/Config.cpp b/src/libslic3r/Config.cpp index ea6c78f7c..6755a6378 100644 --- a/src/libslic3r/Config.cpp +++ b/src/libslic3r/Config.cpp @@ -616,11 +616,11 @@ void ConfigBase::load(const boost::property_tree::ptree &tree) } // Load the config keys from the tail of a G-code file. -void ConfigBase::load_from_gcode_file(const std::string &file) +void ConfigBase::load_from_gcode_file(const std::string& file, bool check_header) { // Read a 64k block from the end of the G-code. boost::nowide::ifstream ifs(file); - { + if (check_header) { const char slic3r_gcode_header[] = "; generated by Slic3r "; const char prusaslicer_gcode_header[] = "; generated by PrusaSlicer "; std::string firstline; diff --git a/src/libslic3r/Config.hpp b/src/libslic3r/Config.hpp index 1420ee39e..218e8cd0c 100644 --- a/src/libslic3r/Config.hpp +++ b/src/libslic3r/Config.hpp @@ -1791,7 +1791,7 @@ public: void setenv_() const; void load(const std::string &file); void load_from_ini(const std::string &file); - void load_from_gcode_file(const std::string &file); + void load_from_gcode_file(const std::string& file, bool check_header = true); // Returns number of key/value pairs extracted. size_t load_from_gcode_string(const char* str); void load(const boost::property_tree::ptree &tree); diff --git a/src/libslic3r/GCode/GCodeProcessor.cpp b/src/libslic3r/GCode/GCodeProcessor.cpp index c1356fec3..c4b2a3518 100644 --- a/src/libslic3r/GCode/GCodeProcessor.cpp +++ b/src/libslic3r/GCode/GCodeProcessor.cpp @@ -970,7 +970,7 @@ void GCodeProcessor::process_file(const std::string& filename, bool apply_postpr if (m_producer == EProducer::PrusaSlicer || m_producer == EProducer::Slic3rPE || m_producer == EProducer::Slic3r) { DynamicPrintConfig config; config.apply(FullPrintConfig::defaults()); - config.load_from_gcode_file(filename); + config.load_from_gcode_file(filename, false); apply_config(config); } }