diff --git a/src/log_impl.rs b/src/log_impl.rs index edc1e1b..62b482e 100644 --- a/src/log_impl.rs +++ b/src/log_impl.rs @@ -567,9 +567,19 @@ macro_rules! std_log_impl { // logging things too. let msg = format!("{}{}", record.args(), self.line_sep); - write!(self.stream.lock(), "{}", msg)?; + let result = { + let mut writer = self.stream.lock(); + write!(writer, "{}", msg) + }; + + result?; } else { - write!(self.stream.lock(), "{}{}", record.args(), self.line_sep)?; + let result = { + let mut writer = self.stream.lock(); + write!(writer, "{}{}", record.args(), self.line_sep) + }; + + result?; } Ok(())