1
0
Fork 0
mirror of git://slackware.nl/current.git synced 2025-01-15 15:41:54 +01:00
slackware-current/source/l/loudmouth/loudmouth.stanzadrop.diff
Patrick J Volkerding b76270bf9e Slackware 13.1
Wed May 19 08:58:23 UTC 2010
Slackware 13.1 x86_64 stable is released!
Lots of thanks are due -- see the RELEASE_NOTES and the rest of the
ChangeLog for credits.  The ISOs are on their way to replication,
a 6 CD-ROM 32-bit set and a dual-sided 32-bit/64-bit x86/x86_64 DVD.
We are taking pre-orders now at store.slackware.com, and offering
a discount if you sign up for a subscription.  Consider picking up
a copy to help support the project.  Thanks again to the Slackware
community for testing, contributing, and generally holding us to a
high level of quality.  :-)
Enjoy!
2018-05-31 22:43:05 +02:00

45 lines
1.4 KiB
Diff

From: Sjoerd Simons <sjoerd.simons@collabora.co.uk>
Date: Tue, 13 Jan 2009 11:28:44 +0000
Subject: [PATCH] Drop stanzas when failing to convert them to LmMessages
when a stanza comes in that for some reason can't be parsed into an LmMessage,
just drop them on the floor instead of blocking the parser. I've seen this
issue happen in practise because some (buggy?) client sending an iq with a
prefix e.g. <client:iq xmlns:client="jabber:client" ... />
---
loudmouth/lm-parser.c | 15 ++++++---------
1 files changed, 6 insertions(+), 9 deletions(-)
diff --git a/loudmouth/lm-parser.c b/loudmouth/lm-parser.c
index 1938d56..89f6675 100644
--- a/loudmouth/lm-parser.c
+++ b/loudmouth/lm-parser.c
@@ -151,19 +151,16 @@ parser_end_node_cb (GMarkupParseContext *context,
if (!m) {
g_warning ("Couldn't create message: %s\n",
parser->cur_root->name);
- return;
- }
-
- g_log (LM_LOG_DOMAIN, LM_LOG_LEVEL_PARSER,
+ } else {
+ g_log (LM_LOG_DOMAIN, LM_LOG_LEVEL_PARSER,
"Have a new message\n");
- if (parser->function) {
- (* parser->function) (parser, m, parser->user_data);
+ if (parser->function) {
+ (* parser->function) (parser, m, parser->user_data);
+ }
+ lm_message_unref (m);
}
- lm_message_unref (m);
lm_message_node_unref (parser->cur_root);
-
-
parser->cur_node = parser->cur_root = NULL;
} else {
LmMessageNode *tmp_node;
--
1.5.6.5