diff --git a/source/org/jivesoftware/smackx/muc/MultiUserChat.java b/source/org/jivesoftware/smackx/muc/MultiUserChat.java index 8d9e52a42..9cbdee30e 100644 --- a/source/org/jivesoftware/smackx/muc/MultiUserChat.java +++ b/source/org/jivesoftware/smackx/muc/MultiUserChat.java @@ -2118,13 +2118,17 @@ public class MultiUserChat { } } - public void finalize() { - if (connection != null) { - messageCollector.cancel(); - connection.removePacketListener(subjectListener); - connection.removePacketListener(presenceListener); - connection.removePacketListener(declinesListener); + public void finalize() throws Throwable { + super.finalize(); + try { + if (connection != null) { + messageCollector.cancel(); + connection.removePacketListener(subjectListener); + connection.removePacketListener(presenceListener); + connection.removePacketListener(declinesListener); + } } + catch (Exception e) {} } /**