Files
bumble_mirror/bumble
uier 5bff934868 l2cap: Resolve teardown hang on disconnect collision or abort
Resolve a teardown hang in LeCreditBasedChannel. When a disconnection
collision occurs (both DUT and peer call disconnect simultaneously) or the
channel is aborted during disconnection, the connection state transitions
to DISCONNECTED before the peer's response arrives (or is ignored).
In these cases, the `disconnection_result` future remained unresolved,
causing any awaiting teardown task to hang.

This patch ensures that calling abort() or receiving a disconnection request
while in the DISCONNECTING state correctly resolves `disconnection_result` and
cleans up the channel.

Verification:
Verified with a new unit test `test_abort_while_disconnecting` added to
`tests/l2cap_test.py` that stubs a non-responsive peer and calls abort()
during the DISCONNECTING state transition, confirming it completes immediately.
2026-06-16 18:03:26 +00:00
..
2026-01-01 03:25:32 +08:00
2026-01-12 13:16:49 +08:00
2026-02-10 17:35:39 +08:00
2026-01-01 03:25:32 +08:00
2026-01-12 13:16:49 +08:00
2026-02-25 00:39:45 +08:00
2026-01-27 09:47:52 -08:00
2026-01-01 03:25:32 +08:00
2026-03-11 21:41:48 +08:00
2026-01-01 03:25:32 +08:00
2026-01-01 03:25:32 +08:00
2026-01-01 03:25:32 +08:00
2026-01-15 12:06:05 +08:00
2026-05-29 08:47:28 +02:00
2026-01-01 03:25:32 +08:00
2026-05-29 08:47:28 +02:00
2026-01-12 13:16:49 +08:00
2026-01-01 03:25:32 +08:00
2026-03-01 02:24:55 +08:00
2025-07-27 15:02:42 -07:00
2026-02-10 20:08:01 +08:00
2025-08-21 16:38:58 -07:00
2026-01-22 17:49:58 +01:00
2026-01-01 03:25:32 +08:00