telepathy: Correctly maintain strong refs on TpContacts in property accessors
authorPhilip Withnall <philip@tecnocode.co.uk>
Sun, 2 Sep 2012 20:18:18 +0000 (21:18 +0100)
committerJeremy Whiting <jpwhiting@kde.org>
Wed, 5 Sep 2012 23:03:41 +0000 (17:03 -0600)
commit302e90d6bc31bcd22e0652551552e12afc64ce77
tree80a72e4e910fe886719ff26eab95398c4d0ae4f5
parent00590b87e2316c7dbd74a072ece72c30ffd89354
telepathy: Correctly maintain strong refs on TpContacts in property accessors

While performing operations on a TpContact’s properties, folks should hold
a strong ref on the TpContact (even if it doesn’t normally hold one).
This expands on commit b251bcb92a343b051e62d458b66de4a9d3011f82 to fix folks
to correctly hold a strong reference in such situations.

This also fixes a potential bug where changing a Tpf.Persona’s groups while
the persona was being served out of the cache would cause a crash (null
pointer dereference).

This adds the following new API:
 • PropertyError.UNAVAILABLE

See: https://bugzilla.gnome.org/show_bug.cgi?id=680335
NEWS
backends/telepathy/lib/tpf-persona.vala
folks/persona.vala