diff --git a/src/core/mod.rs b/src/core/mod.rs index c3632d84..1a326b67 100644 --- a/src/core/mod.rs +++ b/src/core/mod.rs @@ -300,6 +300,13 @@ impl EventStream { /// Close the event stream, i.e. stop processing messages. pub fn close(&self) { + let stream = self.get_stream(); + while let Some(msg) = stream.borrow_mut().events.pop_front() { + let source_callback = self.get_callback(); + if let Some(ref mut callback) = *source_callback.borrow_mut() { + callback(msg); + }; + } self.source.destroy(); }