mirror of
https://git.mirrors.martin98.com/https://github.com/prusa3d/PrusaSlicer.git
synced 2025-07-30 18:52:00 +08:00
Fix ui hanging while slicing
- It was caused by improperly setting m_print to fff_print.
This commit is contained in:
parent
9bdd59afea
commit
59e4a5aba6
@ -89,8 +89,8 @@ public:
|
||||
~BackgroundSlicingProcess();
|
||||
|
||||
void set_temp_output_path(int bed_idx);
|
||||
void set_fff_print(Print* print) { if (m_fff_print != print) stop(); m_fff_print = print; m_print = dynamic_cast<PrintBase*>(print); }
|
||||
void set_sla_print(SLAPrint *print) { if (m_sla_print != print) stop(); m_sla_print = print; m_print = dynamic_cast<PrintBase*>(print); }
|
||||
void set_fff_print(Print* print) { if (m_fff_print != print) stop(); m_fff_print = print; }
|
||||
void set_sla_print(SLAPrint *print) { if (m_sla_print != print) stop(); m_sla_print = print; }
|
||||
void set_thumbnail_cb(ThumbnailsGeneratorCallback cb) { m_thumbnail_cb = cb; }
|
||||
void set_gcode_result(GCodeProcessorResult* result) { m_gcode_result = result; }
|
||||
|
||||
|
@ -6578,9 +6578,12 @@ void Plater::connect_gcode_all() {
|
||||
|
||||
Print *original_print{&active_fff_print()};
|
||||
const int original_bed{s_multiple_beds.get_active_bed()};
|
||||
PrinterTechnology original_technology{this->printer_technology()};
|
||||
|
||||
ScopeGuard guard{[&](){
|
||||
this->p->background_process.set_fff_print(original_print);
|
||||
s_multiple_beds.set_active_bed(original_bed);
|
||||
this->p->background_process.select_technology(original_technology);
|
||||
}};
|
||||
|
||||
for (std::size_t print_index{0}; print_index < this->get_fff_prints().size(); ++print_index) {
|
||||
@ -6590,6 +6593,7 @@ void Plater::connect_gcode_all() {
|
||||
}
|
||||
this->p->background_process.set_fff_print(print.get());
|
||||
this->p->background_process.set_temp_output_path(print_index);
|
||||
this->p->background_process.select_technology(this->p->printer_technology);
|
||||
|
||||
PrintHostJob upload_job;
|
||||
upload_job.upload_data = upload_job_template.upload_data;
|
||||
|
Loading…
x
Reference in New Issue
Block a user