Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion bounded-collections/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ rust-version = "1.60.0"

[dependencies]
serde = { version = "1.0.101", default-features = false }
codec = { version = "3.0.0", default-features = false, features = ["max-encoded-len"], package = "parity-scale-codec" }
codec = { version = "3.3.0", default-features = false, features = ["max-encoded-len"], package = "parity-scale-codec" }
scale-info = { version = ">=1.0, <3", features = ["derive"], default-features = false }
log = { version = "0.4.17", default-features = false }

Expand Down
7 changes: 4 additions & 3 deletions bounded-collections/src/bounded_vec.rs
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@

use super::WeakBoundedVec;
use crate::{Get, TryCollect};
use codec::{Decode, Encode, EncodeLike, MaxEncodedLen};
use codec::{decode_vec_with_len, Compact, Decode, Encode, EncodeLike, MaxEncodedLen};
use core::{
marker::PhantomData,
ops::{Deref, Index, IndexMut, RangeBounds},
Expand Down Expand Up @@ -289,10 +289,11 @@ impl<'a, T, S: Get<u32>> BoundedSlice<'a, T, S> {

impl<T: Decode, S: Get<u32>> Decode for BoundedVec<T, S> {
fn decode<I: codec::Input>(input: &mut I) -> Result<Self, codec::Error> {
let inner = Vec::<T>::decode(input)?;
if inner.len() > S::get() as usize {
let len: u32 = <Compact<u32>>::decode(input)?.into();
if len > S::get() {
return Err("BoundedVec exceeds its limit".into())
}
let inner = decode_vec_with_len(input, len as usize)?;
Ok(Self(inner, PhantomData))
}

Expand Down
2 changes: 1 addition & 1 deletion primitive-types/impls/codec/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ edition = "2021"
rust-version = "1.56.1"

[dependencies]
parity-scale-codec = { version = "3.0.0", default-features = false, features = ["max-encoded-len"] }
parity-scale-codec = { version = "3.3.0", default-features = false, features = ["max-encoded-len"] }

[features]
default = ["std"]
Expand Down