The AutoConnect property is always reported as false if Favorite is
false. Emit property changed for AutoConnect when Favorite changes.
When emitting the changed signal use the same logic as GetProperties in
determining the value to return for AutoConnect.
---
src/service.c | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/src/service.c b/src/service.c
index 9406bc3..56b3729 100644
--- a/src/service.c
+++ b/src/service.c
@@ -1551,7 +1551,11 @@ static void autoconnect_changed(struct connman_service
*service)
if (!allow_property_changed(service))
return;
- autoconnect = service->autoconnect;
+ if (service->favorite)
+ autoconnect = service->autoconnect;
+ else
+ autoconnect = service->favorite;
+
connman_dbus_property_changed_basic(service->path,
CONNMAN_SERVICE_INTERFACE, "AutoConnect",
DBUS_TYPE_BOOLEAN, &autoconnect);
@@ -4885,6 +4889,9 @@ int __connman_service_set_favorite_delayed(struct
connman_service *service,
favorite_changed(service);
+ if (service->autoconnect)
+ autoconnect_changed(service);
+
if (!delay_ordering) {
service_list_sort();
--
2.0.1
--
Aaron McCarthy
_______________________________________________
connman mailing list
[email protected]
https://lists.connman.net/mailman/listinfo/connman