diff --git a/xs/src/libslic3r/PrintGCode.cpp b/xs/src/libslic3r/PrintGCode.cpp index 0c4c29514..fee197287 100644 --- a/xs/src/libslic3r/PrintGCode.cpp +++ b/xs/src/libslic3r/PrintGCode.cpp @@ -383,9 +383,10 @@ PrintGCode::process_layer(size_t idx, const Layer* layer, const Points& copies) // extrude skirt along raft layers and normal obj layers // (not along interlaced support material layers) - if ((print.has_infinite_skirt() || _skirt_done.size() == 0 || (_skirt_done.rbegin())->first < print.config.skirt_height) + if (layer->id() < static_cast(obj.config.raft_layers) + || ((print.has_infinite_skirt() || _skirt_done.size() == 0 || (_skirt_done.rbegin())->first < print.config.skirt_height) && _skirt_done.count(scale_(layer->print_z)) == 0 - && typeid(layer) != typeid(SupportLayer*) || layer->id() < static_cast(obj.config.raft_layers)) { + && typeid(layer) != typeid(SupportLayer*)) ) { gcodegen.set_origin(Pointf(0,0));