X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=lightning%2Fsrc%2Futil%2Flogger.rs;h=dbca9b785e85dfbaf3c68253e7e47b91225c6bdc;hb=a61746246c369dada11469c25dd739f4807c042b;hp=722a81f7ab665b15961363a1f064377718e36dd3;hpb=c5c5f3fea2012dc53a1974f7ad6c7825b1e42d37;p=rust-lightning diff --git a/lightning/src/util/logger.rs b/lightning/src/util/logger.rs index 722a81f7..dbca9b78 100644 --- a/lightning/src/util/logger.rs +++ b/lightning/src/util/logger.rs @@ -173,18 +173,15 @@ impl<'a> core::fmt::Display for DebugBytes<'a> { /// /// This is not exported to bindings users as fmt can't be used in C #[doc(hidden)] -pub struct DebugIter + Clone>(pub core::cell::RefCell); +pub struct DebugIter + Clone>(pub I); impl + Clone> fmt::Display for DebugIter { fn fmt(&self, f: &mut fmt::Formatter) -> Result<(), fmt::Error> { - use core::ops::DerefMut; write!(f, "[")?; - let iter_ref = self.0.clone(); - let mut iter = iter_ref.borrow_mut(); - for item in iter.deref_mut() { + let mut iter = self.0.clone(); + if let Some(item) = iter.next() { write!(f, "{}", item)?; - break; } - for item in iter.deref_mut() { + while let Some(item) = iter.next() { write!(f, ", {}", item)?; } write!(f, "]")?;