aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorKunal Mohan <kunalmohan99@gmail.com>2021-04-29 17:52:14 +0530
committerKunal Mohan <kunalmohan99@gmail.com>2021-05-04 20:48:16 +0530
commit3f70c585c22947c5d8e91bf9cd63187228e4ba5d (patch)
tree26c144ef24d05ba248302571c87ce3573d9a55e6 /src
parentuse Uuid to generate unique server socket names (diff)
downloadsl0ppij-3f70c585c22947c5d8e91bf9cd63187228e4ba5d.tar.gz
sl0ppij-3f70c585c22947c5d8e91bf9cd63187228e4ba5d.tar.xz
sl0ppij-3f70c585c22947c5d8e91bf9cd63187228e4ba5d.zip
nit fixes
Diffstat (limited to 'src')
-rw-r--r--src/common/os_input_output.rs11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/common/os_input_output.rs b/src/common/os_input_output.rs
index d8ef45f9..3f532741 100644
--- a/src/common/os_input_output.rs
+++ b/src/common/os_input_output.rs
@@ -180,7 +180,8 @@ impl<T: Serialize> IpcSenderWithContext<T> {
fn send(&mut self, msg: T) -> Result<(), std::io::Error> {
let err_ctx = get_current_ctx();
self.sender
- .write_all(&bincode::serialize(&(msg, err_ctx)).unwrap())
+ .write_all(&bincode::serialize(&(msg, err_ctx)).unwrap())?;
+ self.sender.flush()
}
}
@@ -404,7 +405,13 @@ impl ClientOsApi for ClientOsInputOutput {
}
}
fn connect_to_server(&self) {
- let socket = LocalSocketStream::connect(UNIQUE_ZELLIJ_IPC_PIPE.as_str()).unwrap();
+ let socket = match LocalSocketStream::connect(UNIQUE_ZELLIJ_IPC_PIPE.as_str()) {
+ Ok(sock) => sock,
+ Err(_) => {
+ std::thread::sleep(std::time::Duration::from_millis(20));
+ LocalSocketStream::connect(UNIQUE_ZELLIJ_IPC_PIPE.as_str()).unwrap()
+ }
+ };
let sock_fd = socket.as_raw_fd();
let dup_fd = unistd::dup(sock_fd).unwrap();
let receiver = unsafe { LocalSocketStream::from_raw_fd(dup_fd) };