diff --git a/src/PrusaSlicer.cpp b/src/PrusaSlicer.cpp index fab1ad5715..5eb3893447 100644 --- a/src/PrusaSlicer.cpp +++ b/src/PrusaSlicer.cpp @@ -644,8 +644,10 @@ int CLI::run(int argc, char **argv) sla_print.set_status_callback( [](const PrintBase::SlicingStatus& s) { - if(s.percent >= 0) // FIXME: is this sufficient? + if(s.percent >= 0) { // FIXME: is this sufficient? printf("%3d%s %s\n", s.percent, "% =>", s.text.c_str()); + std::fflush(stdout); + } }); PrintBase *print = (printer_technology == ptFFF) ? static_cast(&fff_print) : static_cast(&sla_print); diff --git a/src/libslic3r/PrintBase.cpp b/src/libslic3r/PrintBase.cpp index ca13365d15..0254e5cb25 100644 --- a/src/libslic3r/PrintBase.cpp +++ b/src/libslic3r/PrintBase.cpp @@ -107,8 +107,10 @@ void PrintBase::status_update_warnings(int step, PrintStateBase::WarningLevel /* auto status = print_object ? SlicingStatus(*print_object, step) : SlicingStatus(*this, step); m_status_callback(status); } - else if (! message.empty()) + else if (! message.empty()) { printf("%s warning: %s\n", print_object ? "print_object" : "print", message.c_str()); + std::fflush(stdout); + } } std::mutex& PrintObjectBase::state_mutex(PrintBase *print) diff --git a/src/libslic3r/PrintBase.hpp b/src/libslic3r/PrintBase.hpp index 4b4976ea43..2c113f1ee2 100644 --- a/src/libslic3r/PrintBase.hpp +++ b/src/libslic3r/PrintBase.hpp @@ -495,7 +495,7 @@ public: // Calls a registered callback to update the status, or print out the default message. void set_status(int percent, const std::string &message, unsigned int flags = SlicingStatus::DEFAULT) { if (m_status_callback) m_status_callback(SlicingStatus(percent, message, flags)); - else printf("%d => %s\n", percent, message.c_str()); + else { printf("%d => %s\n", percent, message.c_str()); std::fflush(stdout); } } typedef std::function cancel_callback_type;