diff options
author | Peter Holloway <holloway.p.r@gmail.com> | 2021-05-20 21:16:41 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-05-20 16:16:41 -0400 |
commit | feb89ac4387524c7ab571065cec7a190d1917f16 (patch) | |
tree | 4f1ad24f310811ed1f38664bfbb40233dd0a082b /src | |
parent | 1bf8479bb19be230b61a11ba3f74d7341ffd6914 (diff) |
Only read major version when parsing less version (#606)
For versions of less that include a point version (eg 581.2), parsing
the whole version 'word' as a usize fails and causes '--no-init' to be
added to less arguments. This prevents less using the alternate screen
and mouse scrolling.
Fixes #582
Diffstat (limited to 'src')
-rw-r--r-- | src/bat_utils/less.rs | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/bat_utils/less.rs b/src/bat_utils/less.rs index f7429333..79ecd43b 100644 --- a/src/bat_utils/less.rs +++ b/src/bat_utils/less.rs @@ -8,7 +8,7 @@ pub fn retrieve_less_version() -> Option<usize> { fn parse_less_version(output: &[u8]) -> Option<usize> { if output.starts_with(b"less ") { let version = std::str::from_utf8(&output[5..]).ok()?; - let end = version.find(' ')?; + let end = version.find(|c: char| !c.is_ascii_digit())?; version[..end].parse::<usize>().ok() } else { None |