aboutsummaryrefslogtreecommitdiff
path: root/src/ClientSubscribe.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'src/ClientSubscribe.cxx')
-rw-r--r--src/ClientSubscribe.cxx9
1 files changed, 4 insertions, 5 deletions
diff --git a/src/ClientSubscribe.cxx b/src/ClientSubscribe.cxx
index 3f471495..4f147147 100644
--- a/src/ClientSubscribe.cxx
+++ b/src/ClientSubscribe.cxx
@@ -25,6 +25,7 @@ extern "C" {
#include "idle.h"
}
+#include <assert.h>
#include <string.h>
enum client_subscribe_result
@@ -78,21 +79,19 @@ client_unsubscribe_all(Client *client)
}
bool
-client_push_message(Client *client, const struct client_message *msg)
+client_push_message(Client *client, const ClientMessage &msg)
{
assert(client != NULL);
- assert(msg != NULL);
- assert(client_message_defined(msg));
if (client->num_messages >= CLIENT_MAX_MESSAGES ||
- !client->IsSubscribed(msg->channel))
+ !client->IsSubscribed(msg.GetChannel()))
return false;
if (client->messages == NULL)
client_idle_add(client, IDLE_MESSAGE);
client->messages = g_slist_prepend(client->messages,
- client_message_dup(msg));
+ new ClientMessage(msg));
++client->num_messages;
return true;