summaryrefslogtreecommitdiffstats
path: root/src/lib.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib.rs')
-rw-r--r--src/lib.rs12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/lib.rs b/src/lib.rs
index 7af26bc..87bac95 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -229,6 +229,7 @@ impl<'a> MailHeader<'a> {
}
None => {
result.push_str(&"=?");
+ ix_search = ix_begin - 2;
}
};
break;
@@ -1418,4 +1419,15 @@ mod tests {
_ => assert!(false),
};
}
+
+ #[test]
+ fn test_fuzzer_testcase() {
+ const INPUT: &'static str = "U3ViamVjdDplcy1UeXBlOiBtdW50ZW50LVV5cGU6IW11bAAAAAAAAAAAamVjdDplcy1UeXBlOiBtdW50ZW50LVV5cGU6IG11bAAAAAAAAAAAAAAAAABTTUFZdWJqZf86OiP/dCBTdWJqZWN0Ol8KRGF0ZTog/////////////////////wAAAAAAAAAAAHQgYnJmAHQgYnJmZXItRW5jeXBlOnY9NmU3OjA2OgAAAAAAAAAAAAAAADEAAAAAAP/8mAAAAAAAAAAA+f///wAAAAAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAPT0/PzEAAAEAAA==";
+
+ if let Ok(parsed) = parse_mail(&base64::decode(INPUT).unwrap()) {
+ if let Ok(Some(date)) = parsed.headers.get_first_value("Date") {
+ let _ = dateparse(&date);
+ }
+ }
+ }
}