--- a/libpurple/protocols/irc/irc.c Fri Jun 24 16:44:06 2011 +0000
+++ b/libpurple/protocols/irc/irc.c Sat Jun 25 02:42:08 2011 +0000
@@ -101,7 +101,11 @@
static int irc_send_raw(PurpleConnection *gc, const char *buf, int len)
struct irc_conn *irc = (struct irc_conn*)gc->proto_data;
- return do_send(irc, buf, len);
+ irc_send_len(irc, buf, len); @@ -144,16 +148,18 @@
int irc_send(struct irc_conn *irc, const char *buf)
+ return irc_send_len(irc, buf, strlen(buf)); +int irc_send_len(struct irc_conn *irc, const char *buf, int buflen) char *tosend= g_strdup(buf);
purple_signal_emit(_irc_plugin, "irc-sending-text", purple_account_get_connection(irc->account), &tosend);
- buflen = strlen(tosend);
/* If we're not buffering writes, try to send immediately */
ret = do_send(irc, tosend, buflen);
--- a/libpurple/protocols/irc/irc.h Fri Jun 24 16:44:06 2011 +0000
+++ b/libpurple/protocols/irc/irc.h Sat Jun 25 02:42:08 2011 +0000
@@ -106,6 +106,7 @@
typedef int (*IRCCmdCallback) (struct irc_conn *irc, const char *cmd, const char *target, const char **args);
int irc_send(struct irc_conn *irc, const char *buf);
+int irc_send_len(struct irc_conn *irc, const char *buf, int len); gboolean irc_blist_timeout(struct irc_conn *irc);
gboolean irc_who_channel_timeout(struct irc_conn *irc);
void irc_buddy_query(struct irc_conn *irc);