diff --git a/src/screenedge.cpp b/src/screenedge.cpp index 908a6a2db9..34cc880c68 100644 --- a/src/screenedge.cpp +++ b/src/screenedge.cpp @@ -212,8 +212,7 @@ void Edge::unreserve() } void Edge::unreserve(QObject *object) { - if (m_callBacks.contains(object)) { - m_callBacks.remove(object); + if (m_callBacks.remove(object) > 0) { disconnect(object, &QObject::destroyed, this, qOverload(&Edge::unreserve)); unreserve(); }