summaryrefslogtreecommitdiff
path: root/slideshow/source/inc
diff options
context:
space:
mode:
Diffstat (limited to 'slideshow/source/inc')
-rw-r--r--slideshow/source/inc/listenercontainer.hxx7
1 files changed, 7 insertions, 0 deletions
diff --git a/slideshow/source/inc/listenercontainer.hxx b/slideshow/source/inc/listenercontainer.hxx
index 8deb1be90617..af40fb3e6467 100644
--- a/slideshow/source/inc/listenercontainer.hxx
+++ b/slideshow/source/inc/listenercontainer.hxx
@@ -299,6 +299,8 @@ public:
{
Guard aGuard(*this);
+// TODO : needed for the moment since ANDROID doesn't know size_t return from std::erase
+#if defined ANDROID
const typename container_type::iterator aEnd( maListeners.end() );
typename container_type::iterator aIter;
if( (aIter=std::remove(maListeners.begin(),
@@ -311,6 +313,11 @@ public:
maListeners.erase( aIter, aEnd );
return true;
+#else
+ size_t nb = std::erase(maListeners, rListener);
+ // if nb == 0, it means listener wasn't found
+ return (nb != 0);
+#endif
}
/// Removes all listeners in one go