diff options
| author | Kunal Mohan <kunalmohan99@gmail.com> | 2021-04-29 17:52:14 +0530 |
|---|---|---|
| committer | Kunal Mohan <kunalmohan99@gmail.com> | 2021-05-04 20:48:16 +0530 |
| commit | 3f70c585c22947c5d8e91bf9cd63187228e4ba5d (patch) | |
| tree | 26c144ef24d05ba248302571c87ce3573d9a55e6 /src | |
| parent | use Uuid to generate unique server socket names (diff) | |
| download | sl0ppij-3f70c585c22947c5d8e91bf9cd63187228e4ba5d.tar.gz sl0ppij-3f70c585c22947c5d8e91bf9cd63187228e4ba5d.tar.xz sl0ppij-3f70c585c22947c5d8e91bf9cd63187228e4ba5d.zip | |
nit fixes
Diffstat (limited to 'src')
| -rw-r--r-- | src/common/os_input_output.rs | 11 |
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) }; |
