close
Skip to content

Commit 305bab6

Browse files
authored
[rust] Honor full chromedriver version if specified (#17298)
* [rust] Honor full chromedriver version if specified (#17298) * [rust] Fix dangling version reference
1 parent 60ecdeb commit 305bab6

2 files changed

Lines changed: 13 additions & 5 deletions

File tree

‎rust/src/chrome.rs‎

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -171,12 +171,16 @@ impl ChromeManager {
171171
}
172172

173173
fn request_good_driver_version_from_online(&mut self) -> Result<String, Error> {
174-
let browser_or_driver_version = if self.get_driver_version().is_empty() {
175-
self.get_browser_version()
174+
let version_for_filtering = if self.is_driver_version_specific() {
175+
self.get_driver_version().to_string()
176176
} else {
177-
self.get_driver_version()
177+
let browser_or_driver_version = if self.get_driver_version().is_empty() {
178+
self.get_browser_version()
179+
} else {
180+
self.get_driver_version()
181+
};
182+
self.get_major_version(browser_or_driver_version)?
178183
};
179-
let version_for_filtering = self.get_major_version(browser_or_driver_version)?;
180184
self.log.trace(format!(
181185
"Driver version used to request CfT: {version_for_filtering}"
182186
));
@@ -193,7 +197,7 @@ impl ChromeManager {
193197
return Err(anyhow!(format_three_args(
194198
UNAVAILABLE_DOWNLOAD_WITH_MIN_VERSION_ERR_MSG,
195199
self.get_driver_name(),
196-
&version_for_filtering,
200+
version_for_filtering.as_str(),
197201
&MIN_CHROMEDRIVER_VERSION_CFT.to_string(),
198202
)));
199203
}

‎rust/src/lib.rs‎

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -818,6 +818,10 @@ pub trait SeleniumManager {
818818
self.is_version_specific(self.get_browser_version())
819819
}
820820

821+
fn is_driver_version_specific(&self) -> bool {
822+
self.is_version_specific(self.get_driver_version())
823+
}
824+
821825
fn setup(&mut self) -> Result<PathBuf, Error> {
822826
let mut driver_in_path = None;
823827
let mut driver_in_path_version = None;

0 commit comments

Comments
 (0)