bruns added a comment.
In D12124#244924 <https://phabricator.kde.org/D12124#244924>, @broulik wrote: > Wouldn't make a big difference, would it? > > > If there are multiple items for key in the map, the value of the most recently inserted one is returned. > > It's not like we actually check for the property we're overriding with having a saner value. As allproperties is currently called directly from Manager::updateBackend (which is IMHO wrong and needs some cleanup), we end up with values from multiple GetAll calls for the same interface. Without the "cleanup after InterfaceRemoved" (D12126 <https://phabricator.kde.org/D12126>), the propertyCache for e.g. Loop interfaces contained each key 4 times, after D12126 <https://phabricator.kde.org/D12126> its only twice without this one. Fortunately QMap guarantees to use the last inserted value when there are multiple values for a key [1], so this is likely only annoying when debugging and a slight waste of memory/cpu time. [1] http://doc.qt.io/qt-5/qmap.html#find REPOSITORY R245 Solid BRANCH unique_properties REVISION DETAIL https://phabricator.kde.org/D12124 To: bruns, #frameworks, broulik Cc: broulik, michaelh, ngraham, bruns