aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--protocols/jabber/jabber_util.c4
-rw-r--r--tests/check_jabber_util.c2
2 files changed, 6 insertions, 0 deletions
diff --git a/protocols/jabber/jabber_util.c b/protocols/jabber/jabber_util.c
index c3c9df34..ee4753f2 100644
--- a/protocols/jabber/jabber_util.c
+++ b/protocols/jabber/jabber_util.c
@@ -314,6 +314,10 @@ int jabber_compare_jid(const char *jid1, const char *jid2)
{
int i;
+ if (!jid1 || !jid2) {
+ return FALSE;
+ }
+
for (i = 0;; i++) {
if (jid1[i] == '\0' || jid1[i] == '/' || jid2[i] == '\0' || jid2[i] == '/') {
if ((jid1[i] == '\0' || jid1[i] == '/') && (jid2[i] == '\0' || jid2[i] == '/')) {
diff --git a/tests/check_jabber_util.c b/tests/check_jabber_util.c
index 1ffea011..43180fce 100644
--- a/tests/check_jabber_util.c
+++ b/tests/check_jabber_util.c
@@ -102,6 +102,8 @@ static void check_compareJID(int l)
fail_if(jabber_compare_jid("bugtest1@google.com/B", "bugtest2@google.com/A"));
fail_unless(jabber_compare_jid("bugtest@google.com/A", "bugtest@google.com/A"));
fail_if(jabber_compare_jid("", "bugtest@google.com/A"));
+ fail_if(jabber_compare_jid(NULL, ""));
+ fail_if(jabber_compare_jid("", NULL));
}
static void check_hipchat_slug(int l)