From 22000cc7a4c5d3ed9b2312b84d906cb30938b624 Mon Sep 17 00:00:00 2001 From: "lane.wei" Date: Fri, 14 Feb 2025 23:03:20 +0800 Subject: [PATCH] FIX: CLI: fix the crash issue caused filament_id missing jira: no-jira Change-Id: I6256a846cf30f304deda32f61ed5329aacdb5f73 (cherry picked from commit d14e3f42a0a16951651a47d49e05e509ee4696c0) --- src/OrcaSlicer.cpp | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/src/OrcaSlicer.cpp b/src/OrcaSlicer.cpp index f8e0554b71..5a36d65558 100644 --- a/src/OrcaSlicer.cpp +++ b/src/OrcaSlicer.cpp @@ -2907,13 +2907,6 @@ int CLI::run(int argc, char **argv) opt_filament_settings->set_at(filament_name_setting, filament_index-1, 0); config.erase("filament_settings_id"); - std::string& filament_id = load_filaments_id[index]; - ConfigOptionStrings *opt_filament_ids = static_cast (m_print_config.option("filament_ids", true)); - ConfigOptionString* filament_id_setting = new ConfigOptionString(filament_id); - if (opt_filament_ids->size() < filament_count) - opt_filament_ids->resize(filament_count, filament_id_setting); - opt_filament_ids->set_at(filament_id_setting, filament_index-1, 0); - //todo: update different settings of filaments different_settings[filament_index] = ""; inherits_group[filament_index] = load_filaments_inherit[index]; @@ -2927,6 +2920,14 @@ int CLI::run(int argc, char **argv) } } + //add filament_id + std::string& filament_id = load_filaments_id[index]; + ConfigOptionStrings *opt_filament_ids = static_cast (m_print_config.option("filament_ids", true)); + ConfigOptionString* filament_id_setting = new ConfigOptionString(filament_id); + if (opt_filament_ids->size() < filament_count) + opt_filament_ids->resize(filament_count, filament_id_setting); + opt_filament_ids->set_at(filament_id_setting, filament_index-1, 0); + //parse the filament value to index th //loop through options and apply them std::set different_keys_set(different_keys.begin(), different_keys.end());