D14661: Force reevaluation of Predicates if interfaces are removed

Stefan BrĂ¼ns noreply at phabricator.kde.org
Fri Feb 15 03:05:09 GMT 2019


bruns added a comment.


  In D14661#410848 <https://phabricator.kde.org/D14661#410848>, @volkov wrote:
  
  > I guess that there is a short period of time when UDisks daemon is in inconsistent state, i.e. org.freedesktop.UDisks2.Filesystem interface is removed for CD-ROM device, but the device's properties still have Optical=true.
  >  Adding "updateBackend(udi);" before "emit deviceAdded(udi);" gives Udisks time to become consistent.
  
  
  Its not UDisks which is inconsistent, but the representation in Solid. It has a lot of issues:
  
  - properties are not per interface in Solid, but per device. This is plain wrong (e.g. the partition and the filesystem '/dev/sda5' may have different size, but Solid merges their "Size" property).
  - Solid does not listen properly to the propertiesChanged event, but insists on polling in a number of places.
  - DBus messages are handled in different places (e.g. the interfaces signals, handled in both DeviceManager and the Device), leading to inconsistent state.

REPOSITORY
  R245 Solid

REVISION DETAIL
  https://phabricator.kde.org/D14661

To: bruns, #frameworks, broulik, ngraham, apol
Cc: volkov, apol, anthonyfieroni, kde-frameworks-devel, michaelh, ngraham, bruns
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-frameworks-devel/attachments/20190215/2d4b178e/attachment.html>


More information about the Kde-frameworks-devel mailing list