dbus: don't fail when reconnecting object signals

Since dbus::ObjectProxy is silently cached, with no way to invalidate,
it's possible that individual instances of objects will come and go
using the same underlying object proxy.  i.e. dbus::PropertySet

These will need to change the signal callbacks to be bound to their
own instance, so the current behaviour of failing in this case with
a log message is pessimal.

Change dbus::ObjectProxy to overwrite the existing signal callbacks
with the new ones on repeated calls, rather than preserve the first.

BUG=chromium-os:28064
TEST=unit test included, and we receive property notifications on devices after connection now

Change-Id: Ic4ae092163a364c53bdfcf88f4ce8f74b110b5cb

R=satorux@chromium.org


Review URL: http://codereview.chromium.org/9808001

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@128100 0039d316-1c4b-4281-b951-d872f2087c98


CrOS-Libchrome-Original-Commit: 3b6205cfb6b12f5e1368b6cc57e24debec56e434
3 files changed
tree: 78edaddb957fe5ebfd2c1c4d9c64fd468895a174
  1. base/
  2. build/
  3. dbus/
  4. ipc/
  5. testing/
  6. third_party/