diff options
author | Julien Nabet <serval2412@yahoo.fr> | 2023-11-18 23:19:56 +0100 |
---|---|---|
committer | Julien Nabet <serval2412@yahoo.fr> | 2023-11-19 13:41:30 +0100 |
commit | 8158f016ea094ad48cdf11cd8ae46cd282af25d2 (patch) | |
tree | 808d88983d67fa7d6d251e167c84d16849a707fb /slideshow/source/inc | |
parent | 7ad4641e79169e297a88ee9e62e9be3d74f7124e (diff) |
c++20: use std::erase(_if) instead of std::remove(_if)+erase (part 11)
Change-Id: I2197c65248a96caa8ae621d5b1d16aa1086fc525
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159643
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Diffstat (limited to 'slideshow/source/inc')
-rw-r--r-- | slideshow/source/inc/listenercontainer.hxx | 7 |
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 |