diff --git a/src/form_urlencoded.rs b/src/form_urlencoded.rs index c75ab8b8..cb18aad4 100644 --- a/src/form_urlencoded.rs +++ b/src/form_urlencoded.rs @@ -118,7 +118,7 @@ pub fn serialize_with_encoding<'a, I>(pairs: I, encoding_override: Option<::enco serialize_internal(pairs, EncodingOverride::from_opt_encoding(encoding_override)) } -fn serialize_internal<'a, I>(mut pairs: I, encoding_override: EncodingOverride) -> String +fn serialize_internal<'a, I>(pairs: I, encoding_override: EncodingOverride) -> String where I: Iterator { #[inline] fn byte_serialize(input: &str, output: &mut String, diff --git a/src/parser.rs b/src/parser.rs index 2ca8f1cf..cc40929a 100644 --- a/src/parser.rs +++ b/src/parser.rs @@ -515,7 +515,7 @@ fn parse_path<'a>(base_path: &[String], input: &'a str, context: Context, let mut path_part = String::new(); let mut ends_with_slash = false; end = input.len(); - for (i, c, next_i) in iter { + while let Some((i, c, next_i)) = iter.next() { match c { '/' => { ends_with_slash = true; diff --git a/src/tests.rs b/src/tests.rs index acc10a29..fb4fbb19 100644 --- a/src/tests.rs +++ b/src/tests.rs @@ -184,7 +184,7 @@ fn unescape(input: &str) -> String { hex.push(chars.next().unwrap()); hex.push(chars.next().unwrap()); hex.push(chars.next().unwrap()); - from_str_radix(hex.as_slice(), 16) + from_str_radix(hex.as_slice(), 16).ok() .and_then(char::from_u32).unwrap() } _ => panic!("Invalid test data input"),