fix(primitives): Handle map-indef variant for aux data (#70)

This commit is contained in:
Santiago Carmuega 2022-03-08 22:49:26 -03:00 committed by GitHub
parent 74754043e3
commit d13432da12
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 6 additions and 1 deletions

View file

@ -1318,7 +1318,9 @@ pub enum AuxiliaryData {
impl<'b> minicbor::Decode<'b> for AuxiliaryData {
fn decode(d: &mut minicbor::Decoder<'b>) -> Result<Self, minicbor::decode::Error> {
match d.datatype()? {
minicbor::data::Type::Map => Ok(AuxiliaryData::Shelley(d.decode()?)),
minicbor::data::Type::Map | minicbor::data::Type::MapIndef => {
Ok(AuxiliaryData::Shelley(d.decode()?))
}
minicbor::data::Type::Array => {
d.array()?;
let transaction_metadata = d.decode()?;
@ -1426,6 +1428,8 @@ mod tests {
include_str!("test_data/test16.block"),
// peculiar block with missing nonce hash
include_str!("test_data/test17.block"),
// peculiar block with strange AuxiliaryData variant
include_str!("test_data/test18.block"),
];
for (idx, block_str) in test_blocks.iter().enumerate() {

File diff suppressed because one or more lines are too long