diff --git a/smack-core/src/main/java/org/jivesoftware/smack/packet/StanzaView.java b/smack-core/src/main/java/org/jivesoftware/smack/packet/StanzaView.java index 981898965..9ee3b6933 100644 --- a/smack-core/src/main/java/org/jivesoftware/smack/packet/StanzaView.java +++ b/smack-core/src/main/java/org/jivesoftware/smack/packet/StanzaView.java @@ -87,10 +87,14 @@ public interface StanzaView extends XmlLangElement { return false; } - @SuppressWarnings("unchecked") default E getExtension(Class extensionElementClass) { QName qname = XmppElementUtil.getQNameFor(extensionElementClass); - return (E) getExtension(qname); + ExtensionElement extensionElement = getExtension(qname); + if (!extensionElementClass.isInstance(extensionElement)) { + return null; + } + + return extensionElementClass.cast(extensionElement); } /**