summaryrefslogtreecommitdiffstats
path: root/net/src/lib.rs
diff options
context:
space:
mode:
Diffstat (limited to 'net/src/lib.rs')
-rw-r--r--net/src/lib.rs22
1 files changed, 12 insertions, 10 deletions
diff --git a/net/src/lib.rs b/net/src/lib.rs
index 95216126..2619069b 100644
--- a/net/src/lib.rs
+++ b/net/src/lib.rs
@@ -217,19 +217,21 @@ impl KeyServer {
Ok(u) => u,
};
- let mut armored_blob = vec![];
- {
- let mut w = match Writer::new(&mut armored_blob,
- Kind::PublicKey, &[]) {
- Err(e) => return Box::new(future::err(e.into())),
- Ok(w) => w,
- };
+ let mut w = match Writer::new(Vec::new(),
+ Kind::PublicKey, &[]) {
+ Ok(v) => v,
+ Err(e) => return Box::new(future::err(e.into())),
+ };
- if let Err(e) = key.serialize(&mut w) {
- return Box::new(future::err(e));
- }
+ if let Err(e) = key.serialize(&mut w) {
+ return Box::new(future::err(e));
}
+ let armored_blob = match w.finalize() {
+ Ok(v) => v,
+ Err(e) => return Box::new(future::err(e.into())),
+ };
+
// Prepare to send url-encoded data.
let mut post_data = b"keytext=".to_vec();
post_data.extend_from_slice(percent_encode(&armored_blob, KEYSERVER_ENCODE_SET)