diff --git a/src/header/common/accept_encoding.rs b/src/header/common/accept_encoding.rs index 0441d2fd62..eed7c2eb43 100644 --- a/src/header/common/accept_encoding.rs +++ b/src/header/common/accept_encoding.rs @@ -20,7 +20,7 @@ header! { test_accept_encoding { // From the RFC test_header!(test1, vec![b"compress, gzip"]); - test_header!(test2, vec![b""]); + test_header!(test2, vec![b""], Some(AcceptEncoding(vec![]))); test_header!(test3, vec![b"*"]); // Note: Removed quality 1 from gzip test_header!(test4, vec![b"compress;q=0.5, gzip"]); diff --git a/src/header/parsing.rs b/src/header/parsing.rs index 1ee74e01eb..07ded6c5cb 100644 --- a/src/header/parsing.rs +++ b/src/header/parsing.rs @@ -31,7 +31,10 @@ pub fn from_one_comma_delimited(raw: &[u8]) -> Option> { Ok(s) => { Some(s .split(',') - .map(|x| x.trim()) + .filter_map(|x| match x.trim() { + "" => None, + y => Some(y) + }) .filter_map(|x| x.parse().ok()) .collect()) }