summaryrefslogtreecommitdiffstats
path: root/buffered-reader
diff options
context:
space:
mode:
authorJustus Winter <justus@sequoia-pgp.org>2023-03-23 11:19:47 +0100
committerJustus Winter <justus@sequoia-pgp.org>2023-03-23 11:19:47 +0100
commit7db963d430e29beb41548b8467465e99908df534 (patch)
tree03b3355db8156df567c0c4df88c585f39d00a1ce /buffered-reader
parent9fc6834ecf50d49ffaabe89ffea9f7304dce6302 (diff)
buffered-reader: Hoist accessing lazy static out of the loop.
Diffstat (limited to 'buffered-reader')
-rw-r--r--buffered-reader/src/lib.rs8
1 files changed, 5 insertions, 3 deletions
diff --git a/buffered-reader/src/lib.rs b/buffered-reader/src/lib.rs
index 5637a794..a130ca7c 100644
--- a/buffered-reader/src/lib.rs
+++ b/buffered-reader/src/lib.rs
@@ -759,13 +759,14 @@ pub trait BufferedReader<C> : io::Read + fmt::Debug + fmt::Display + Send + Sync
assert!(t[0] <= t[1]);
}
+ let buf_size = default_buf_size();
let mut total = 0;
let position = 'outer: loop {
let len = {
// Try self.buffer. Only if it is empty, use
// self.data.
let buffer = if self.buffer().is_empty() {
- self.data(default_buf_size())?
+ self.data(buf_size)?
} else {
self.buffer()
};
@@ -848,12 +849,13 @@ pub trait BufferedReader<C> : io::Read + fmt::Debug + fmt::Display + Send + Sync
/// discards it. A consequence of this is that an error may occur
/// after we have consumed some of the data.
fn drop_eof(&mut self) -> Result<bool, std::io::Error> {
+ let buf_size = default_buf_size();
let mut at_least_one_byte = false;
loop {
- let n = self.data(default_buf_size())?.len();
+ let n = self.data(buf_size)?.len();
at_least_one_byte |= n > 0;
self.consume(n);
- if n < default_buf_size() {
+ if n < buf_size {
// EOF.
break;
}