mirror of
https://github.com/serde-rs/serde.git
synced 2025-09-30 14:31:53 +00:00
Don't serialize trailing NULL
This commit is contained in:
parent
857974ab8a
commit
9f83164c40
@ -315,8 +315,7 @@ impl Deserialize for CString {
|
||||
fn deserialize<D>(deserializer: D) -> Result<CString, D::Error>
|
||||
where D: Deserializer
|
||||
{
|
||||
let mut v: Vec<u8> = try!(Deserialize::deserialize(deserializer));
|
||||
v.pop(); // cut trailing NULL, because CString::new adds it
|
||||
let v: Vec<u8> = try!(Deserialize::deserialize(deserializer));
|
||||
CString::new(v)
|
||||
.map_err(|e| Error::custom(format!("unexpected NULL at byte {}", e.nul_position())))
|
||||
}
|
||||
|
@ -106,7 +106,7 @@ impl Serialize for CStr {
|
||||
fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
|
||||
where S: Serializer
|
||||
{
|
||||
(self.to_bytes_with_nul()).serialize(serializer)
|
||||
self.to_bytes().serialize(serializer)
|
||||
}
|
||||
}
|
||||
|
||||
@ -116,7 +116,7 @@ impl Serialize for CString {
|
||||
fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
|
||||
where S: Serializer
|
||||
{
|
||||
(self.to_bytes_with_nul()).serialize(serializer)
|
||||
self.to_bytes().serialize(serializer)
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user