diff options
-rw-r--r-- | net.c | 17 |
1 files changed, 9 insertions, 8 deletions
@@ -222,13 +222,14 @@ void net_disconnect(void) { void net_send_message(const char* sender, const char* content, const char* recipient) { - // TODO what happens if client is disconnected and this function is called? - - char* uuid = xmpp_uuid_gen(ctx); - - xmpp_stanza_t* msg = xmpp_message_new(ctx, "chat", recipient, uuid); - xmpp_stanza_set_from(msg, sender); - xmpp_message_set_body(msg, content); - xmpp_send(conn, msg); + if (xmpp_conn_is_connected(conn)) { + char* uuid = xmpp_uuid_gen(ctx); + xmpp_stanza_t* msg = xmpp_message_new(ctx, "chat", recipient, uuid); + xmpp_stanza_set_from(msg, sender); + xmpp_message_set_body(msg, content); + xmpp_send(conn, msg); + } else { + fprintf(stderr, "net_send_message() called while not connected\n"); + } } |