diff options
| author | Marvin W <git@larma.de> | 2026-10-23 16:38:04 +0200 |
|---|---|---|
| committer | Marvin W <git@larma.de> | 2026-10-23 17:01:44 +0200 |
| commit | 2eb311938665f92ef48e2cfa030720fc68ca7cc9 (patch) | |
| tree | 64ee8aa646873e5c3af62fc29f767c456fe88b7a /xmpp-vala/src/module/xep | |
| parent | 9e9f46d820257900a47410ba87c3aac601d0a71e (diff) | |
xmpp-vala: Fix deadlocks with cancellables
Diffstat (limited to 'xmpp-vala/src/module/xep')
| -rw-r--r-- | xmpp-vala/src/module/xep/0047_in_band_bytestreams.vala | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/xmpp-vala/src/module/xep/0047_in_band_bytestreams.vala b/xmpp-vala/src/module/xep/0047_in_band_bytestreams.vala index 1e423b49..74034a8a 100644 --- a/xmpp-vala/src/module/xep/0047_in_band_bytestreams.vala +++ b/xmpp-vala/src/module/xep/0047_in_band_bytestreams.vala @@ -177,7 +177,7 @@ public class Connection : IOStream { if (read_callback != null) { Idle.add((owned) read_callback, read_callback_priority); read_callback = null; - if (read_callback_cancellable != null) { + if (read_callback_cancellable != null && !read_callback_cancellable.is_cancelled()) { read_callback_cancellable.disconnect(read_callback_cancellable_id); } read_callback_cancellable = null; @@ -187,7 +187,7 @@ public class Connection : IOStream { if (write_callback != null) { Idle.add((owned) write_callback, write_callback_priority); write_callback = null; - if (write_callback_cancellable != null) { + if (write_callback_cancellable != null && !write_callback_cancellable.is_cancelled()) { write_callback_cancellable.disconnect(write_callback_cancellable_id); } write_callback_cancellable = null; |
