Skip to content

Commit 376035a

Browse files
authored
Merge pull request #167 from LechevSpace/chore/set-msrv
2 parents cad9505 + fb8e5d2 commit 376035a

File tree

3 files changed

+26
-5
lines changed

3 files changed

+26
-5
lines changed

.github/workflows/rust.yml

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,17 +6,25 @@ jobs:
66
formatting:
77
runs-on: ubuntu-latest
88
steps:
9-
- uses: actions/checkout@v1
9+
- uses: actions/checkout@v4
10+
- uses: dtolnay/rust-toolchain@stable
11+
with:
12+
components: rustfmt
1013
- name: Check formatting
1114
run: cargo fmt -- --check
1215

1316
build-test:
1417
runs-on: ubuntu-latest
1518
strategy:
1619
matrix:
20+
# Always run MSRV too!
21+
rust: ["stable", "1.76"]
1722
features: ['log', 'defmt-log', '""']
1823
steps:
19-
- uses: actions/checkout@v1
24+
- uses: actions/checkout@v4
25+
- uses: dtolnay/rust-toolchain@master
26+
with:
27+
toolchain: ${{ matrix.rust }}
2028
- name: Build
2129
run: cargo build --no-default-features --features ${{matrix.features}} --verbose
2230
- name: Run Tests

Cargo.toml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,9 @@ readme = "README.md"
1010
repository = "https://github.com/rust-embedded-community/embedded-sdmmc-rs"
1111
version = "0.8.0"
1212

13+
# Make sure to update the CI too!
14+
rust-version = "1.76"
15+
1316
[dependencies]
1417
byteorder = {version = "1", default-features = false}
1518
defmt = {version = "0.3", optional = true}

src/fat/volume.rs

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,15 @@ impl VolumeName {
3636

3737
/// Get name
3838
pub fn name(&self) -> &[u8] {
39-
self.contents.trim_ascii_end()
39+
let mut bytes = &self.contents[..];
40+
while let [rest @ .., last] = bytes {
41+
if last.is_ascii_whitespace() {
42+
bytes = rest;
43+
} else {
44+
break;
45+
}
46+
}
47+
bytes
4048
}
4149

4250
/// Create a new MS-DOS volume label.
@@ -595,7 +603,7 @@ impl FatVolume {
595603
lfn_buffer.push(&buffer);
596604
SeqState::Complete { csum }
597605
}
598-
(true, 0x02..0x14, _) => {
606+
(true, sequence, _) if sequence >= 0x02 && sequence < 0x14 => {
599607
lfn_buffer.clear();
600608
lfn_buffer.push(&buffer);
601609
SeqState::Remaining {
@@ -607,7 +615,9 @@ impl FatVolume {
607615
lfn_buffer.push(&buffer);
608616
SeqState::Complete { csum }
609617
}
610-
(false, 0x01..0x13, SeqState::Remaining { csum, next }) if next == sequence => {
618+
(false, sequence, SeqState::Remaining { csum, next })
619+
if sequence >= 0x01 && sequence < 0x13 && next == sequence =>
620+
{
611621
lfn_buffer.push(&buffer);
612622
SeqState::Remaining {
613623
csum,

0 commit comments

Comments
 (0)