if (state->paired)
return;
- if (!state->svc_resolved)
+ state->paired = true;
+
+ /* If the other bearer state was alraedy true we don't need to
+ * send any property signals.
+ */
+ if (dev->bredr_state.paired == dev->le_state.paired)
+ return;
+
+ if (!state->svc_resolved) {
dev->pending_paired = true;
- else if (dev->bredr_state.paired != dev->le_state.paired)
- g_dbus_emit_property_changed(dbus_conn, dev->path,
- DEVICE_INTERFACE, "Paired");
+ return;
+ }
- state->paired = true;
+ g_dbus_emit_property_changed(dbus_conn, dev->path,
+ DEVICE_INTERFACE, "Paired");
}
static void device_auth_req_free(struct btd_device *device)