Fix of SPE-691 Slicer crash after extruder change

Added synchronization of GCodePreviewData between the front end / back end
(GCodePreview data is only used if PrintStep psGCodeExport is finished).
Added reset of GCodePreviewData on Print::apply() to conserve RAM.
This commit is contained in:
bubnikv 2018-12-19 14:47:16 +01:00
parent 354458ae73
commit e9990ed79e
12 changed files with 46 additions and 40 deletions

View file

@ -1273,7 +1273,6 @@ void Plater::priv::update(bool force_full_scene_refresh)
#else
this->canvas3D->reload_scene(false, force_full_scene_refresh);
#endif // ENABLE_REMOVE_TABS_FROM_PLATER
preview->reset_gcode_preview_data();
preview->reload_print();
this->schedule_background_process();
@ -2010,7 +2009,6 @@ unsigned int Plater::priv::update_background_process()
this->sidebar->show_sliced_info_sizer(false);
// Reset preview canvases. If the print has been invalidated, the preview canvases will be cleared.
// Otherwise they will be just refreshed.
this->gcode_preview_data.reset();
switch (this->printer_technology) {
case ptFFF:
if (this->preview != nullptr)