diff options
| author | Dario Nieuwenhuis <[email protected]> | 2022-05-14 02:20:40 +0200 |
|---|---|---|
| committer | Dario Nieuwenhuis <[email protected]> | 2022-05-14 02:20:40 +0200 |
| commit | 833b3a370a31b060884facbcd8eeeae68a43f4e1 (patch) | |
| tree | 8507dc23b50de5718173ef65631606ae57ba8d5b /embassy-nrf/src/buffered_uarte.rs | |
| parent | 13bcb5ffb692997df192ab3bf8c20b4fb2a1d172 (diff) | |
nrf/buffered_uarte: fix out of bounds on read.
Diffstat (limited to 'embassy-nrf/src/buffered_uarte.rs')
| -rw-r--r-- | embassy-nrf/src/buffered_uarte.rs | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/embassy-nrf/src/buffered_uarte.rs b/embassy-nrf/src/buffered_uarte.rs index fc4e9c8d0..c42fa1138 100644 --- a/embassy-nrf/src/buffered_uarte.rs +++ b/embassy-nrf/src/buffered_uarte.rs | |||
| @@ -216,7 +216,7 @@ impl<'d, U: UarteInstance, T: TimerInstance> embedded_io::asynch::Read for Buffe | |||
| 216 | let data = state.rx.pop_buf(); | 216 | let data = state.rx.pop_buf(); |
| 217 | if !data.is_empty() { | 217 | if !data.is_empty() { |
| 218 | trace!(" got {:?} {:?}", data.as_ptr() as u32, data.len()); | 218 | trace!(" got {:?} {:?}", data.as_ptr() as u32, data.len()); |
| 219 | let len = data.len().min(data.len()); | 219 | let len = data.len().min(buf.len()); |
| 220 | buf[..len].copy_from_slice(&data[..len]); | 220 | buf[..len].copy_from_slice(&data[..len]); |
| 221 | state.rx.pop(len); | 221 | state.rx.pop(len); |
| 222 | do_pend = true; | 222 | do_pend = true; |
