diff --git a/src/serialize/dataclass.rs b/src/serialize/dataclass.rs index f862b8a9a814bf672089c87ffbf749851ede10ec_c3JjL3NlcmlhbGl6ZS9kYXRhY2xhc3MucnM=..eef7b29cc0a34538da179d9b3b02d630d0839852_c3JjL3NlcmlhbGl6ZS9kYXRhY2xhc3MucnM= 100644 --- a/src/serialize/dataclass.rs +++ b/src/serialize/dataclass.rs @@ -64,7 +64,9 @@ std::ptr::null_mut(), ) }; - if unsafe { ffi!(PyObject_GetAttr(field, FIELD_TYPE_STR)) != FIELD_TYPE.as_ptr() } { + let field_type = ffi!(PyObject_GetAttr(field, FIELD_TYPE_STR)); + ffi!(Py_DECREF(field_type)); + if unsafe { field_type != FIELD_TYPE.as_ptr() } { continue; } {