diff options
| author | Markus Pettersson <markus.pettersson@mullvad.net> | 2023-11-16 16:38:45 +0100 |
|---|---|---|
| committer | Markus Pettersson <markus.pettersson@mullvad.net> | 2023-12-04 09:06:53 +0100 |
| commit | aee1d38a61676a41cf3fe0d99ffd0fa0b469e94f (patch) | |
| tree | f26e967e67a17c9cec4f29fec504f3242d8a2b23 | |
| parent | 2f648dd809195335e7ba84d005b877b55e03fc2c (diff) | |
| download | mullvadvpn-aee1d38a61676a41cf3fe0d99ffd0fa0b469e94f.tar.xz mullvadvpn-aee1d38a61676a41cf3fe0d99ffd0fa0b469e94f.zip | |
Get rid of unnecessary `Arc<Mutex<_>>`
| -rw-r--r-- | mullvad-daemon/src/api.rs | 47 |
1 files changed, 22 insertions, 25 deletions
diff --git a/mullvad-daemon/src/api.rs b/mullvad-daemon/src/api.rs index 6074604b89..a7e35f0ad5 100644 --- a/mullvad-daemon/src/api.rs +++ b/mullvad-daemon/src/api.rs @@ -166,13 +166,12 @@ impl AccessModeSelector { } fn on_get_access_method(&mut self, tx: ResponseTx<AccessMethodSetting>) -> Result<()> { - let value = self.get_access_method()?; + let value = self.get_access_method(); self.reply(tx, value) } - fn get_access_method(&mut self) -> Result<AccessMethodSetting> { - let connections_modes = self.state.connection_modes.lock().unwrap(); - Ok(connections_modes.peek()) + fn get_access_method(&mut self) -> AccessMethodSetting { + self.state.connection_modes.peek() } fn on_set_access_method( @@ -180,14 +179,12 @@ impl AccessModeSelector { tx: ResponseTx<()>, value: AccessMethodSetting, ) -> Result<()> { - self.set_access_method(value)?; + self.set_access_method(value); self.reply(tx, ()) } - fn set_access_method(&mut self, value: AccessMethodSetting) -> Result<()> { - let mut connections_modes = self.state.connection_modes.lock().unwrap(); - connections_modes.set_access_method(value); - Ok(()) + fn set_access_method(&mut self, value: AccessMethodSetting) { + self.state.connection_modes.set_access_method(value); } fn on_next_connection_mode(&mut self, tx: ResponseTx<ApiConnectionMode>) -> Result<()> { @@ -209,16 +206,18 @@ impl AccessModeSelector { } fn next_connection_mode(&mut self) -> ApiConnectionMode { - let access_method = { - let mut connection_modes = self.state.connection_modes.lock().unwrap(); - connection_modes - .next() - .map(|access_method_setting| access_method_setting.access_method) - .unwrap_or(AccessMethod::from(BuiltInAccessMethod::Direct)) - }; + let access_method = self + .state + .connection_modes + .next() + .map(|access_method_setting| access_method_setting.access_method) + .unwrap_or(AccessMethod::from(BuiltInAccessMethod::Direct)); let connection_mode = self.state.from(access_method); - log::info!("New API connection mode selected: {}", connection_mode); + log::info!( + "New API connection mode selected: {connection_mode}", + connection_mode = connection_mode + ); connection_mode } @@ -227,14 +226,12 @@ impl AccessModeSelector { tx: ResponseTx<()>, values: Vec<AccessMethodSetting>, ) -> Result<()> { - self.update_access_methods(values)?; + self.update_access_methods(values); self.reply(tx, ()) } - fn update_access_methods(&mut self, values: Vec<AccessMethodSetting>) -> Result<()> { - let mut connection_modes = self.state.connection_modes.lock().unwrap(); - connection_modes.update_access_methods(values); - Ok(()) + fn update_access_methods(&mut self, values: Vec<AccessMethodSetting>) { + self.state.connection_modes.update_access_methods(values); } } @@ -254,7 +251,7 @@ pub struct ApiConnectionModeProvider { cache_dir: PathBuf, /// Used for selecting a Bridge when the `Mullvad Bridges` access method is used. relay_selector: RelaySelector, - connection_modes: Arc<Mutex<ConnectionModesIterator>>, + connection_modes: ConnectionModesIterator, } impl ApiConnectionModeProvider { @@ -267,8 +264,8 @@ impl ApiConnectionModeProvider { Ok(Self { cache_dir, relay_selector, - connection_modes: Arc::new(Mutex::new(connection_modes_iterator)), - }) + connection_modes: connection_modes_iterator, + } } /// Ad-hoc version of [`std::convert::From::from`], but since some |
