From 27c442fa26b52f43db4872326b6906b2822dbbd8 Mon Sep 17 00:00:00 2001 From: Ross Williams Date: Sat, 1 Mar 2025 14:09:12 +0000 Subject: [PATCH] fix: set field index on deserialize error --- src/deserializer.rs | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/deserializer.rs b/src/deserializer.rs index 2448c5a0..806b5f70 100644 --- a/src/deserializer.rs +++ b/src/deserializer.rs @@ -1,11 +1,10 @@ use std::{error::Error as StdError, fmt, iter, num, str}; use serde::{ - de::value::BorrowedBytesDeserializer, de::{ - Deserialize, DeserializeSeed, Deserializer, EnumAccess, - Error as SerdeError, IntoDeserializer, MapAccess, SeqAccess, - Unexpected, VariantAccess, Visitor, + self, value::BorrowedBytesDeserializer, Deserialize, DeserializeSeed, + Deserializer, EnumAccess, Error as SerdeError, IntoDeserializer, + MapAccess, SeqAccess, Unexpected, VariantAccess, Visitor, }, serde_if_integer128, }; @@ -27,7 +26,8 @@ pub fn deserialize_string_record<'de, D: Deserialize<'de>>( headers: headers.map(|r| r.iter()), field: 0, }); - D::deserialize(&mut deser).map_err(|err| { + D::deserialize(&mut deser).map_err(|mut err| { + err.field = Some(deser.0.field); Error::new(ErrorKind::Deserialize { pos: record.position().map(Clone::clone), err,