Fix potential as_ptr() substraction bug
parent
a24c366670
commit
47dd2ed93e
|
@ -81,7 +81,7 @@ impl AttachmentBuilder {
|
|||
}
|
||||
assert!(boundary.is_some());
|
||||
let _boundary = boundary.unwrap();
|
||||
let offset = _boundary.as_ptr() as usize - value.as_ptr() as usize;
|
||||
let offset = (_boundary.as_ptr() as usize).wrapping_sub(value.as_ptr() as usize);
|
||||
let boundary = SliceBuild::new(offset, _boundary.len());
|
||||
let subattachments = Self::subattachments(&self.raw, boundary.get(&value));
|
||||
assert!(subattachments.len() > 0);
|
||||
|
@ -215,7 +215,7 @@ impl AttachmentBuilder {
|
|||
}
|
||||
};
|
||||
let body_slice = {
|
||||
let offset = body.as_ptr() as usize - a.as_ptr() as usize;
|
||||
let offset = (body.as_ptr() as usize).wrapping_sub(a.as_ptr() as usize);
|
||||
SliceBuild::new(offset, body.len())
|
||||
};
|
||||
builder.raw = body_slice.get(a).ltrim().into();
|
||||
|
|
|
@ -418,7 +418,7 @@ fn group(input: &[u8]) -> IResult<&[u8], Address> {
|
|||
return IResult::Error(e);
|
||||
}
|
||||
IResult::Done(rest, vec) => {
|
||||
let size: usize = (rest.as_ptr() as usize) - ((&input[0..] as &[u8]).as_ptr() as usize);
|
||||
let size: usize = (rest.as_ptr() as usize).wrapping_sub((&input[0..] as &[u8]).as_ptr() as usize);
|
||||
return IResult::Done(
|
||||
rest,
|
||||
Address::Group(GroupAddress {
|
||||
|
|
Loading…
Reference in New Issue