diff options
author | Jonny Lamb <jonny.lamb@collabora.co.uk> | 2010-12-21 16:27:49 +0000 |
---|---|---|
committer | Jonny Lamb <jonny.lamb@collabora.co.uk> | 2010-12-22 08:45:48 +0000 |
commit | 83979e241e70340a3a34e61e75ec175949ec9e68 (patch) | |
tree | e5639161f624e9c9976afe5824cd078f9a9b7bb5 /telepathy-glib/base-client.c | |
parent | f5ff1dc58c0aa6f87585ee6bc7fce3f3112b9443 (diff) | |
download | telepathy-glib-83979e241e70340a3a34e61e75ec175949ec9e68.tar.gz |
base-client: make set_observer_recover set both ways
Setting the argument recover=TRUE or recover=FALSE should do the
sensible thing according to the documentation of the function, not
just always set it to TRUE regardless.
Fixes: fd.o#32551
Signed-off-by: Jonny Lamb <jonny.lamb@collabora.co.uk>
Diffstat (limited to 'telepathy-glib/base-client.c')
-rw-r--r-- | telepathy-glib/base-client.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/telepathy-glib/base-client.c b/telepathy-glib/base-client.c index 179a14855..921155bc0 100644 --- a/telepathy-glib/base-client.c +++ b/telepathy-glib/base-client.c @@ -409,7 +409,15 @@ tp_base_client_set_observer_recover (TpBaseClient *self, g_return_if_fail (!self->priv->registered); g_return_if_fail (cls->observe_channels != NULL); - self->priv->flags |= (CLIENT_IS_OBSERVER | CLIENT_OBSERVER_RECOVER); + if (recover) + { + self->priv->flags |= (CLIENT_IS_OBSERVER | CLIENT_OBSERVER_RECOVER); + } + else + { + self->priv->flags |= CLIENT_IS_OBSERVER; + self->priv->flags &= ~CLIENT_OBSERVER_RECOVER; + } } /** |