@@ -313,12 +313,18 @@ [delegates broadcastSelector: @selector(connectionWasClosed:) withObject: self]; return; } - [parser parseBuffer: buffer - length: length]; + @try { + [parser parseBuffer: buffer + length: length]; + } @catch (OFMalformedXMLException *e) { + [self XMPP_sendStreamError: @"bad-format" + text: nil]; + [self close]; + } [oldParser release]; [oldElementBuilder release]; oldParser = nil;