Chromium Code Reviews
Descriptioncashew: do not delete DBus::ObjectProxy objects from D-Bus callbacks
This CL resolves a deadlock that causes cashew to hang indefinitely.
Deleting a subclass of DBus::ObjectProxy such as Service or Device
causes an unregister message to be sent to the bus daemon, and is
effectively the same as explicitly sending a D-Bus message from within a
D-Bus callback. As such, it can trigger the same libdbus-c++ deadlock
that caused issues 8516 and 8486.
We avoid this by scheduling deferred deletion of these objects from the
main loop.
BUG=chromium-os:8892
TEST=manual testing on device (suspend/resume while connected to 3G)
Change-Id: I5882bb581a2b3edb440954d1c32a41fef48ac48d
Committed: http://chrome-svn/viewvc/chromeos?view=rev&revision=35386a9
Patch Set 1 #
Total comments: 10
Patch Set 2 : Address djkurtz offline review comment #Patch Set 3 : Address more djkurtz review comments #
Total comments: 1
Messages
Total messages: 5 (0 generated)
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||