From 8cf1ac6fa62627f704a3c55b31d56ee852086d5e Mon Sep 17 00:00:00 2001 From: LJ Date: Wed, 12 Mar 2025 00:06:04 -0700 Subject: [PATCH] Bug fix in decoding `List` values. --- src/base/value.rs | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/src/base/value.rs b/src/base/value.rs index 0717208e3..c3df94498 100644 --- a/src/base/value.rs +++ b/src/base/value.rs @@ -624,12 +624,7 @@ where } Self::from_json_values(fields_schema.iter().zip(v.into_iter())) } - serde_json::Value::Object(v) => { - if v.len() != fields_schema.len() { - api_bail!("unmatched value length"); - } - Self::from_json_object(v, fields_schema.iter()) - } + serde_json::Value::Object(v) => Self::from_json_object(v, fields_schema.iter()), _ => api_bail!("invalid value type"), } } @@ -812,7 +807,7 @@ where CollectionKind::List => { let rows = v .into_iter() - .map(|v| Ok(FieldValues::from_json(v, &s.row.fields[1..])?.into())) + .map(|v| Ok(FieldValues::from_json(v, &s.row.fields)?.into())) .collect::>>()?; Value::List(rows) }