mirror of
https://git.mirrors.martin98.com/https://github.com/prusa3d/PrusaSlicer.git
synced 2025-08-15 23:15:54 +08:00
PresetCollection: Fixed update_vendor_ptrs_after_copy().
Ptrs are updated for edited preset too. Related to SPE-2690
This commit is contained in:
parent
49f78f9770
commit
5df9a9901a
@ -1604,7 +1604,7 @@ std::vector<std::string> PresetCollection::merge_presets(PresetCollection &&othe
|
|||||||
|
|
||||||
void PresetCollection::update_vendor_ptrs_after_copy(const VendorMap &new_vendors)
|
void PresetCollection::update_vendor_ptrs_after_copy(const VendorMap &new_vendors)
|
||||||
{
|
{
|
||||||
for (Preset &preset : m_presets)
|
auto update = [&new_vendors](Preset& preset) {
|
||||||
if (preset.vendor != nullptr) {
|
if (preset.vendor != nullptr) {
|
||||||
assert(! preset.is_default && ! preset.is_external);
|
assert(! preset.is_default && ! preset.is_external);
|
||||||
// Re-assign a pointer to the vendor structure in the new PresetBundle.
|
// Re-assign a pointer to the vendor structure in the new PresetBundle.
|
||||||
@ -1612,6 +1612,12 @@ void PresetCollection::update_vendor_ptrs_after_copy(const VendorMap &new_vendor
|
|||||||
assert(it != new_vendors.end());
|
assert(it != new_vendors.end());
|
||||||
preset.vendor = &it->second;
|
preset.vendor = &it->second;
|
||||||
}
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
for (Preset& preset : m_presets)
|
||||||
|
update(preset);
|
||||||
|
// update vendor for edited preset too
|
||||||
|
update(m_edited_preset);
|
||||||
}
|
}
|
||||||
|
|
||||||
void PresetCollection::update_map_alias_to_profile_name()
|
void PresetCollection::update_map_alias_to_profile_name()
|
||||||
|
Loading…
x
Reference in New Issue
Block a user