Diff between 454d4502d24e0a840cc8f35685550fb7cff62938 and 261cf78db4be79a0f7d44798a57730b159c9be91
Changed Files
| File | Additions | Deletions | Status |
| src/shared/att.c | +11 | -0 | modified |
Full Patch
diff --git a/src/shared/att.c b/src/shared/att.c
index 4670de7..8d58156 100644
--- a/src/shared/att.c
+++ b/src/shared/att.c
@@ -1203,6 +1203,17 @@ bool bt_att_unregister_disconnect(struct bt_att *att, unsigned int id)
if (!att || !id)
return false;
+ /* Check if disconnect is running */
+ if (!att->io) {
+ disconn = queue_find(att->disconn_list, match_disconn_id,
+ UINT_TO_PTR(id));
+ if (!disconn)
+ return false;
+
+ disconn->removed = true;
+ return true;
+ }
+
disconn = queue_remove_if(att->disconn_list, match_disconn_id,
UINT_TO_PTR(id));
if (!disconn)