From cfc2e9b62ad4754dbc60fba1d4693f2f6cfc66c9 Mon Sep 17 00:00:00 2001 From: Rodrigo Faselli <162915171+RF47@users.noreply.github.com> Date: Sun, 5 Apr 2026 15:10:09 -0300 Subject: [PATCH] Fix "Access Violation" (#12704) (#12856) Co-authored-by: Kiss Lorand <50251547+kisslorand@users.noreply.github.com> --- src/libslic3r/GCode/GCodeProcessor.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/libslic3r/GCode/GCodeProcessor.cpp b/src/libslic3r/GCode/GCodeProcessor.cpp index 906c2070e4..f7c9d51cb5 100644 --- a/src/libslic3r/GCode/GCodeProcessor.cpp +++ b/src/libslic3r/GCode/GCodeProcessor.cpp @@ -5354,8 +5354,10 @@ void GCodeProcessor::process_M1020(const GCodeReader::GCodeLine &line) BOOST_LOG_TRIVIAL(error) << "Invalid M1020 command (" << line.raw() << ")."; } else { - if (eid >= m_result.filaments_count) + if (eid >= m_result.filaments_count) { BOOST_LOG_TRIVIAL(error) << "Invalid M1020 command (" << line.raw() << ")."; + return; + } process_filament_change(eid); } } @@ -5383,8 +5385,10 @@ void GCodeProcessor::process_T(const std::string_view command) BOOST_LOG_TRIVIAL(error) << "Invalid T command (" << command << ")."; } else { - if (eid >= m_result.filaments_count) + if (eid >= m_result.filaments_count) { BOOST_LOG_TRIVIAL(error) << "Invalid T command (" << command << ")."; + return; + } process_filament_change(eid); } }