diff options
author | Luiz Augusto von Dentz <luiz.von.dentz@intel.com> | 2015-04-09 20:39:09 +0300 |
---|---|---|
committer | Luiz Augusto von Dentz <luiz.von.dentz@intel.com> | 2016-03-11 11:38:06 +0200 |
commit | 30889f605b7da1f3a3a94ee7f0676d1e914a0b8b (patch) | |
tree | 93eeedc1c3578c3dd7118a3caea5587636f7d767 | |
parent | 519776b96460d850a01582ee5884b8fa0752bc00 (diff) | |
download | bluez-30889f605b7da1f3a3a94ee7f0676d1e914a0b8b.tar.gz |
service: Add 'reconnecting' state
-rw-r--r-- | plugins/service.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/plugins/service.c b/plugins/service.c index 243df4682..1980bbfe2 100644 --- a/plugins/service.c +++ b/plugins/service.c @@ -133,18 +133,22 @@ static DBusMessage *service_connect(DBusConnection *conn, DBusMessage *msg, static const char *data_get_state(struct service_data *data) { + struct btd_service *service = data->service; int err; - data->state = btd_service_get_state(data->service); + data->state = btd_service_get_state(service); switch (data->state) { case BTD_SERVICE_STATE_UNAVAILABLE: return "unavailable"; case BTD_SERVICE_STATE_DISCONNECTED: + if (btd_service_is_reconnecting(service)) + return "reconnecting"; err = btd_service_get_error(data->service); return err < 0 ? "error" : "disconnected"; case BTD_SERVICE_STATE_CONNECTING: - return "connecting"; + return btd_service_is_reconnecting(service) ? "reconnecting" : + "connecting"; case BTD_SERVICE_STATE_CONNECTED: return "connected"; case BTD_SERVICE_STATE_DISCONNECTING: |