delimit partial strings around \x0\

This commit is contained in:
Mark Thom
2022-01-12 22:10:59 -07:00
parent 4dca86d5cf
commit d9e190096c

View File

@@ -44,10 +44,10 @@ impl PartialString {
#[inline] #[inline]
pub(super) fn new<'a>(src: &'a str, atom_tbl: &mut AtomTable) -> Option<(Self, &'a str)> { pub(super) fn new<'a>(src: &'a str, atom_tbl: &mut AtomTable) -> Option<(Self, &'a str)> {
let terminator_idx = scan_for_terminator(src.chars()); let terminator_idx = scan_for_terminator(src.chars());
let pstr = PartialString(atom_tbl.build_with(src)); let pstr = PartialString(atom_tbl.build_with(&src[.. terminator_idx]));
Some(if terminator_idx != src.as_bytes().len() { Some(if terminator_idx < src.as_bytes().len() {
(pstr, &src[terminator_idx..]) (pstr, &src[terminator_idx + 1..])
} else { } else {
(pstr, "") (pstr, "")
}) })