aboutsummaryrefslogtreecommitdiff
path: root/src/server/client_accept.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/client_accept.rs')
-rw-r--r--src/server/client_accept.rs5
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;