diff options
| author | Can Celik <ogulcancelik@gmail.com> | 2026-08-10 21:01:45 +0300 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-08-10 21:01:45 +0300 |
| commit | 7e4ab7b034078b5ac22b514fb7008f0b288687a6 (patch) | |
| tree | 1512a1e625f6609268131a3edf5f707089f86b3d /src/server/client_accept.rs | |
| parent | bbd7c2094a44fcbcc4a3a3aedef236c4d697d793 (diff) | |
fix(server): prioritize shutdown requests (#2624)
refs #2612
Diffstat (limited to 'src/server/client_accept.rs')
| -rw-r--r-- | src/server/client_accept.rs | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/server/client_accept.rs b/src/server/client_accept.rs index ccfe7b1a..e2a8a42d 100644 --- a/src/server/client_accept.rs +++ b/src/server/client_accept.rs @@ -1,5 +1,5 @@ use std::io; -use std::sync::{atomic::AtomicBool, Arc}; +use std::sync::{atomic::AtomicBool, atomic::Ordering, Arc}; use interprocess::local_socket::traits::{Listener as _, Stream as _}; use tokio::sync::mpsc; @@ -16,6 +16,9 @@ pub(crate) fn accept_pending_client_connections( server_event_tx: &mpsc::Sender<ServerEvent>, ) -> io::Result<()> { loop { + if should_quit.load(Ordering::Acquire) { + break; + } match listener.accept() { Ok(stream) => { let client_id = *next_client_id; |
