From 0a09c32e316d786d99afa4480b676387e546f7c7 Mon Sep 17 00:00:00 2001 From: "zhimin.zeng" Date: Wed, 27 Aug 2025 14:08:02 +0800 Subject: [PATCH] FIX: the use ams flag is incorrect for cali github: 7998 Change-Id: I6511969ad50db0d3cf01ecbe8261e461092da1e3 (cherry picked from commit d25405ed8d85e4a80822dddab515795984d7b924) (cherry picked from commit af7a8350e3726aa7d122eaaefc089bd440433e76) --- src/slic3r/Utils/CalibUtils.cpp | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/src/slic3r/Utils/CalibUtils.cpp b/src/slic3r/Utils/CalibUtils.cpp index 7184d4cf12..423b748ffd 100644 --- a/src/slic3r/Utils/CalibUtils.cpp +++ b/src/slic3r/Utils/CalibUtils.cpp @@ -1807,7 +1807,7 @@ void CalibUtils::send_to_print(const CalibInfo &calib_info, wxString &error_mess print_job->task_ams_mapping = "[" + select_ams + "]"; print_job->task_ams_mapping_info = ""; - print_job->task_use_ams = devPrinterUtil::IsVirtualSlot(select_ams); + print_job->task_use_ams = !devPrinterUtil::IsVirtualSlot(select_ams); std::string new_ams_mapping = "[{\"ams_id\":" + std::to_string(calib_info.ams_id) + ", \"slot_id\":" + std::to_string(calib_info.slot_id) + "}]"; print_job->task_ams_mapping2 = new_ams_mapping; @@ -1920,11 +1920,12 @@ void CalibUtils::send_to_print(const std::vector &calib_infos, wxStri print_job->task_ams_mapping_info = ""; print_job->task_ams_mapping2 = new_select_ams; - if (calib_infos.size() == 1 && (calib_infos[0].select_ams == VIRTUAL_AMS_MAIN_ID_STR || calib_infos[0].select_ams == VIRTUAL_AMS_DEPUTY_ID_STR)) { - print_job->task_use_ams = false; - } - else { - print_job->task_use_ams = true; + print_job->task_use_ams = false; + for (const CalibInfo& calib_info : calib_infos) { + if (calib_info.select_ams != VIRTUAL_AMS_MAIN_ID_STR && calib_info.select_ams != VIRTUAL_AMS_DEPUTY_ID_STR) { + print_job->task_use_ams = true; + break; + } } CalibMode cali_mode = calib_infos[0].params.mode;