diff --git a/framed/Cargo.toml b/framed/Cargo.toml index 9e99575..81e3ea7 100644 --- a/framed/Cargo.toml +++ b/framed/Cargo.toml @@ -15,7 +15,7 @@ branch = "master" [dependencies] byteorder = { version = "^1.2.1", default-features = false } -cobs = { version = "^0.1.4", default-features = false } +cobs = { version = "^0.2.3", default-features = false } crc16 = "^0.3.4" ref_slice = "^1.1.1" serde = { version = "^1.0", default-features = false } diff --git a/framed/src/bytes.rs b/framed/src/bytes.rs index 5301d07..d764857 100644 --- a/framed/src/bytes.rs +++ b/framed/src/bytes.rs @@ -686,6 +686,15 @@ mod tests { assert_eq!(&PAYLOAD, &*decoded); } + #[test] + #[cfg(feature = "use_std")] + fn decode_to_box_extra_byte_in_front() { + let encoded = codec().encode_to_box(&PAYLOAD).unwrap(); + let encoded_with_extra_in_front = [&[3], &*encoded].concat(); + let decoded = codec().decode_to_box(&encoded_with_extra_in_front); + assert!(decoded.is_err()); + } + #[test] #[cfg(feature = "use_std")] fn decode_from_reader_ok() {