Index: head/devel/racerd/files/patch-rust-1.40.0 =================================================================== --- head/devel/racerd/files/patch-rust-1.40.0 (nonexistent) +++ head/devel/racerd/files/patch-rust-1.40.0 (revision 520311) @@ -0,0 +1,55 @@ +From 2efa106431e6fb15b73478f67e37cb307bac2be6 Mon Sep 17 00:00:00 2001 +From: Simon Sapin +Date: Wed, 4 Jul 2018 22:18:36 +0200 +Subject: [PATCH] Fix a lifetime bug uncovered by NLL, thanks @lqd + +--- cargo-crates/url-1.5.1/src/form_urlencoded.rs.orig 2017-06-25 04:39:47 UTC ++++ cargo-crates/url-1.5.1/src/form_urlencoded.rs +@@ -247,8 +247,16 @@ impl<'a> Target for &'a mut String { + // * `Serializer` keeps its target in a private field + // * Unlike in other `Target` impls, `UrlQuery::finished` does not return `Self`. + impl<'a> Target for ::UrlQuery<'a> { +- fn as_mut_string(&mut self) -> &mut String { &mut self.url.serialization } +- fn finish(self) -> &'a mut ::Url { self.url } ++ fn as_mut_string(&mut self) -> &mut String { ++ &mut self.url.as_mut().unwrap().serialization ++ } ++ ++ fn finish(mut self) -> &'a mut ::Url { ++ let url = self.url.take().unwrap(); ++ url.restore_already_parsed_fragment(self.fragment.take()); ++ url ++ } ++ + type Finished = &'a mut ::Url; + } + +--- cargo-crates/url-1.5.1/src/lib.rs.orig 2017-06-25 04:39:47 UTC ++++ cargo-crates/url-1.5.1/src/lib.rs +@@ -1283,7 +1283,7 @@ impl Url { + self.serialization.push('?'); + } + +- let query = UrlQuery { url: self, fragment: fragment }; ++ let query = UrlQuery { url: Some(self), fragment: fragment }; + form_urlencoded::Serializer::for_suffix(query, query_start + "?".len()) + } + +@@ -2347,13 +2347,15 @@ fn io_error(reason: &str) -> io::Result { + /// Implementation detail of `Url::query_pairs_mut`. Typically not used directly. + #[derive(Debug)] + pub struct UrlQuery<'a> { +- url: &'a mut Url, ++ url: Option<&'a mut Url>, + fragment: Option, + } + + impl<'a> Drop for UrlQuery<'a> { + fn drop(&mut self) { +- self.url.restore_already_parsed_fragment(self.fragment.take()) ++ if let Some(url) = self.url.take() { ++ url.restore_already_parsed_fragment(self.fragment.take()) ++ } + } + } + Property changes on: head/devel/racerd/files/patch-rust-1.40.0 ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property