diff options
-rw-r--r-- | src/command/commands.c | 12 | ||||
-rw-r--r-- | src/xmpp/bookmark.c | 4 |
2 files changed, 11 insertions, 5 deletions
diff --git a/src/command/commands.c b/src/command/commands.c index be6f4dfb..fdb4017c 100644 --- a/src/command/commands.c +++ b/src/command/commands.c @@ -1865,11 +1865,15 @@ cmd_bookmark(gchar **args, struct cmd_help_t help) } if (strcmp(cmd, "add") == 0) { - gboolean added = bookmark_add(jid, nick, password, autojoin); - if (added) { - cons_show("Bookmark added for %s.", jid); + if (strchr(jid, '@')==NULL) { + cons_show("Can't add bookmark with JID '%s'; should be '%s@domain.tld'", jid, jid); } else { - cons_show("Bookmark already exists, use /bookmark update to edit."); + gboolean added = bookmark_add(jid, nick, password, autojoin); + if (added) { + cons_show("Bookmark added for %s.", jid); + } else { + cons_show("Bookmark already exists, use /bookmark update to edit."); + } } } else if (strcmp(cmd, "update") == 0) { gboolean updated = bookmark_update(jid, nick, password, autojoin); diff --git a/src/xmpp/bookmark.c b/src/xmpp/bookmark.c index e23c185c..743baf39 100644 --- a/src/xmpp/bookmark.c +++ b/src/xmpp/bookmark.c @@ -422,7 +422,9 @@ _send_bookmarks(void) xmpp_stanza_set_attribute(conference, STANZA_ATTR_JID, bookmark->jid); Jid *jidp = jid_create(bookmark->jid); - xmpp_stanza_set_attribute(conference, STANZA_ATTR_NAME, jidp->localpart); + if (jidp->localpart != NULL) { + xmpp_stanza_set_attribute(conference, STANZA_ATTR_NAME, jidp->localpart); + } jid_destroy(jidp); if (bookmark->autojoin) { |