From 46b6837def491186a9eeffc5b9d32a60bed5ddc6 Mon Sep 17 00:00:00 2001 From: "Ruben S. Montero" Date: Tue, 18 Jan 2022 12:00:17 +0100 Subject: [PATCH] b #5697: Remove SAVE_AS_HOT attribute (cherry picked from commit f100729f099b1a08d9968a3f25af9ce0ff4ae9ae) --- include/Image.h | 5 +++++ include/ImageTemplate.h | 5 +++++ src/lcm/LifeCycleStates.cc | 4 ++++ src/template/Template.cc | 2 +- 4 files changed, 15 insertions(+), 1 deletion(-) diff --git a/include/Image.h b/include/Image.h index 66db750d78..e27ebd3a09 100644 --- a/include/Image.h +++ b/include/Image.h @@ -440,6 +440,11 @@ public: return static_cast(obj_template.get())->is_saving(); } + void clear_saving() + { + static_cast(obj_template.get())->clear_saving(); + } + /** * Set/Unset an image as persistent * @param persistent true to make an image persistent diff --git a/include/ImageTemplate.h b/include/ImageTemplate.h index 252198ad9c..8f0f5b39c4 100644 --- a/include/ImageTemplate.h +++ b/include/ImageTemplate.h @@ -45,6 +45,11 @@ public: replace("SAVE_AS_HOT", "YES"); } + void clear_saving() + { + erase("SAVE_AS_HOT"); + } + // ------------------------------------------------------------------------- // Restricted attributes interface implementation // ------------------------------------------------------------------------- diff --git a/src/lcm/LifeCycleStates.cc b/src/lcm/LifeCycleStates.cc index 17cdcd54f7..c12cdbdef8 100644 --- a/src/lcm/LifeCycleStates.cc +++ b/src/lcm/LifeCycleStates.cc @@ -1753,6 +1753,8 @@ void LifeCycleManager::trigger_saveas_success(int vid) if ( auto image = ipool->get(image_id) ) { + image->clear_saving(); + image->set_state_unlock(); ipool->update(image.get()); @@ -1803,6 +1805,8 @@ void LifeCycleManager::trigger_saveas_failure(int vid) if ( auto image = ipool->get(image_id) ) { + image->clear_saving(); + image->set_state(Image::ERROR); ipool->update(image.get()); diff --git a/src/template/Template.cc b/src/template/Template.cc index c03a8cb880..3e8f63678a 100644 --- a/src/template/Template.cc +++ b/src/template/Template.cc @@ -268,7 +268,7 @@ int Template::replace(const string& name, const bool& value) int Template::erase(const string& name) { - int j = 0; + int j = 0; auto index = attributes.equal_range(name);