|
|
6f97c1 |
From d1c4a459faa1d514026c4834828cb33024ac2ceb Mon Sep 17 00:00:00 2001
|
|
|
6f97c1 |
From: Zhang Liang <zhanglianga@uniontech.com>
|
|
|
6f97c1 |
Date: Mon, 1 Feb 2021 19:29:43 +0800
|
|
|
9fb289 |
Subject: [PATCH 27/52] Fix: remove listener
|
|
|
6f97c1 |
|
|
|
6f97c1 |
Add the operation for removing the listener form listener list
|
|
|
6f97c1 |
|
|
|
6f97c1 |
Change-Id: Ief2ff1303b607eee499543303fe80e51f8f10cc5
|
|
|
6f97c1 |
Reviewed-by: David Edmundson <davidedmundson@kde.org>
|
|
|
6f97c1 |
(cherry picked from commit 16760280fd04cf70255bab16d9acecad254fdd8f)
|
|
|
6f97c1 |
---
|
|
|
6f97c1 |
src/client/qwaylanddisplay.cpp | 3 ++-
|
|
|
6f97c1 |
1 file changed, 2 insertions(+), 1 deletion(-)
|
|
|
6f97c1 |
|
|
|
6f97c1 |
diff --git a/src/client/qwaylanddisplay.cpp b/src/client/qwaylanddisplay.cpp
|
|
|
6f97c1 |
index f10c1f79..e0dfe8b2 100644
|
|
|
6f97c1 |
--- a/src/client/qwaylanddisplay.cpp
|
|
|
6f97c1 |
+++ b/src/client/qwaylanddisplay.cpp
|
|
|
6f97c1 |
@@ -452,9 +452,10 @@ void QWaylandDisplay::addRegistryListener(RegistryListener listener, void *data)
|
|
|
6f97c1 |
|
|
|
6f97c1 |
void QWaylandDisplay::removeListener(RegistryListener listener, void *data)
|
|
|
6f97c1 |
{
|
|
|
6f97c1 |
- std::remove_if(mRegistryListeners.begin(), mRegistryListeners.end(), [=](Listener l){
|
|
|
6f97c1 |
+ auto iter = std::remove_if(mRegistryListeners.begin(), mRegistryListeners.end(), [=](Listener l){
|
|
|
6f97c1 |
return (l.listener == listener && l.data == data);
|
|
|
6f97c1 |
});
|
|
|
6f97c1 |
+ mRegistryListeners.erase(iter, mRegistryListeners.end());
|
|
|
6f97c1 |
}
|
|
|
6f97c1 |
|
|
|
6f97c1 |
uint32_t QWaylandDisplay::currentTimeMillisec()
|
|
|
6f97c1 |
--
|
|
|
9fb289 |
2.35.1
|
|
|
6f97c1 |
|