diff --git a/include/etl/observer.h b/include/etl/observer.h
index 1cc9786a..1cd9b3f0 100644
--- a/include/etl/observer.h
+++ b/include/etl/observer.h
@@ -133,8 +133,9 @@ namespace etl
//*****************************************************************
/// Remove a particular observer from the list.
///\param observer A reference to the observer.
+ ///\return true if the observer was removed, false if not.
//*****************************************************************
- void remove_observer(TObserver& observer)
+ bool remove_observer(TObserver& observer)
{
// See if we have it in our list.
typename Observer_List::iterator i_observer = std::find(observer_list.begin(),
@@ -146,6 +147,11 @@ namespace etl
{
// Erase it.
observer_list.erase(i_observer);
+ return true;
+ }
+ else
+ {
+ return false;
}
}
diff --git a/include/etl/version.h b/include/etl/version.h
index 5c7e5d03..caaedbcf 100644
--- a/include/etl/version.h
+++ b/include/etl/version.h
@@ -37,10 +37,10 @@ SOFTWARE.
/// Definitions of the ETL version
///\ingroup utilities
-#define ETL_VERSION "11.13.1"
+#define ETL_VERSION "11.13.2"
#define ETL_VERSION_MAJOR 11
#define ETL_VERSION_MINOR 13
-#define ETL_VERSION_PATCH 1
+#define ETL_VERSION_PATCH 2
#endif
diff --git a/support/Release notes.txt b/support/Release notes.txt
index 94460ab2..e9202643 100644
--- a/support/Release notes.txt
+++ b/support/Release notes.txt
@@ -1,3 +1,8 @@
+===============================================================================
+11.13.2
+Protected destructor for some FSM classes.
+Observer's remove_observer returns bool.
+
===============================================================================
11.13.1
Fixed vector of pointer typedefs
diff --git a/test/test_observer.cpp b/test/test_observer.cpp
index f6efc6b4..b23a1359 100644
--- a/test/test_observer.cpp
+++ b/test/test_observer.cpp
@@ -424,7 +424,11 @@ namespace
CHECK_THROW(observable.add_observer(observer5), etl::observer_list_full);
- observable.remove_observer(observer3);
+ CHECK(observable.remove_observer(observer3));
+ CHECK_EQUAL(size_t(3), observable.number_of_observers());
+
+ // Try again.
+ CHECK(!observable.remove_observer(observer3));
CHECK_EQUAL(size_t(3), observable.number_of_observers());
observable.clear_observers();