diff options
author | Justus Winter <justus@sequoia-pgp.org> | 2020-10-19 13:17:09 +0200 |
---|---|---|
committer | Justus Winter <justus@sequoia-pgp.org> | 2020-10-19 16:16:17 +0200 |
commit | 9ba3972b9bef03a446c1b53385ef1313c492147a (patch) | |
tree | ec0312c754b3c29d582136498a8ad26280189856 /openpgp/src | |
parent | c5d1b7e3847d56b33b8e738c8cff4c8e2a24527c (diff) |
openpgp: Avoid buffering.
Diffstat (limited to 'openpgp/src')
-rw-r--r-- | openpgp/src/armor.rs | 6 | ||||
-rw-r--r-- | openpgp/src/parse/packet_parser_builder.rs | 4 |
2 files changed, 6 insertions, 4 deletions
diff --git a/openpgp/src/armor.rs b/openpgp/src/armor.rs index 54380acf..6e64a596 100644 --- a/openpgp/src/armor.rs +++ b/openpgp/src/armor.rs @@ -559,14 +559,14 @@ impl<'a> Reader<'a> { mode) } - pub(crate) fn from_buffered_reader<C: 'a, M>( - inner: Box<dyn BufferedReader<C> + 'a>, mode: M) -> Self + pub(crate) fn from_buffered_reader<M>( + inner: Box<dyn BufferedReader<()> + 'a>, mode: M) -> Self where M: Into<Option<ReaderMode>> { let mode = mode.into().unwrap_or(Default::default()); Reader { - source: Box::new(buffered_reader::Generic::new(inner, None)), + source: inner, kind: None, mode, buffer: Vec::<u8>::with_capacity(1024), diff --git a/openpgp/src/parse/packet_parser_builder.rs b/openpgp/src/parse/packet_parser_builder.rs index ddb663d0..3e3d5a2e 100644 --- a/openpgp/src/parse/packet_parser_builder.rs +++ b/openpgp/src/parse/packet_parser_builder.rs @@ -416,7 +416,9 @@ impl<'a> PacketParserBuilder<'a> { if let Some(mode) = dearmor_mode { self.bio = Box::new(buffered_reader::Generic::with_cookie( - armor::Reader::from_buffered_reader(self.bio, Some(mode)), + armor::Reader::from_buffered_reader( + buffered_reader::Adapter::new(self.bio).as_boxed(), + Some(mode)), None, Default::default())); } |