fix(preset): sync_ams_list auch User-Presets (P-Prefix IDs) berücksichtigen
This commit is contained in:
@@ -3216,6 +3216,13 @@ unsigned int PresetBundle::sync_ams_list(std::vector<std::pair<DynamicPrintConfi
|
||||
has_type |= f.config.opt_string("filament_type", 0u) == filament_type;
|
||||
return f.is_compatible && filaments.get_preset_base(f) == &f && f.filament_id == filament_id; });
|
||||
}
|
||||
// Also search user presets (not base presets) with matching filament_id.
|
||||
// User presets have P-prefix IDs and are not returned by get_preset_base(f) == &f.
|
||||
if (iter == filaments.end() && !filament_id.empty()) {
|
||||
iter = std::find_if(filaments.begin(), filaments.end(), [&filament_id, &has_type, filament_type](auto &f) {
|
||||
has_type |= f.config.opt_string("filament_type", 0u) == filament_type;
|
||||
return f.is_compatible && !f.is_system && f.filament_id == filament_id; });
|
||||
}
|
||||
if (iter == filaments.end()) {
|
||||
BOOST_LOG_TRIVIAL(info) << __FUNCTION__ << boost::format(": filament_id %1% not found or system or compatible") % filament_id;
|
||||
if (!filament_type.empty()) {
|
||||
|
||||
Reference in New Issue
Block a user