libpurple/protocols/irc/irc.c

changeset 36076
a0e5b68ff4ef
parent 36055
33978dc8ef6f
child 36077
b7328f4317c7
equal deleted inserted replaced
36075:dfb5988e053b 36076:a0e5b68ff4ef
48 static void irc_login(PurpleAccount *account); 48 static void irc_login(PurpleAccount *account);
49 static void irc_login_cb_ssl(gpointer data, PurpleSslConnection *gsc, PurpleInputCondition cond); 49 static void irc_login_cb_ssl(gpointer data, PurpleSslConnection *gsc, PurpleInputCondition cond);
50 static void irc_login_cb(gpointer data, gint source, const gchar *error_message); 50 static void irc_login_cb(gpointer data, gint source, const gchar *error_message);
51 static void irc_ssl_connect_failure(PurpleSslConnection *gsc, PurpleSslErrorType error, gpointer data); 51 static void irc_ssl_connect_failure(PurpleSslConnection *gsc, PurpleSslErrorType error, gpointer data);
52 static void irc_close(PurpleConnection *gc); 52 static void irc_close(PurpleConnection *gc);
53 static int irc_im_send(PurpleConnection *gc, const char *who, const char *what, PurpleMessageFlags flags); 53 static int irc_im_send(PurpleConnection *gc, PurpleMessage *msg);
54 static int irc_chat_send(PurpleConnection *gc, int id, const char *what, PurpleMessageFlags flags); 54 static int irc_chat_send(PurpleConnection *gc, int id, const char *what, PurpleMessageFlags flags);
55 static void irc_chat_join (PurpleConnection *gc, GHashTable *data); 55 static void irc_chat_join (PurpleConnection *gc, GHashTable *data);
56 static void irc_input_cb(gpointer data, gint source, PurpleInputCondition cond); 56 static void irc_input_cb(gpointer data, gint source, PurpleInputCondition cond);
57 static void irc_input_cb_ssl(gpointer data, PurpleSslConnection *gsc, PurpleInputCondition cond); 57 static void irc_input_cb_ssl(gpointer data, PurpleSslConnection *gsc, PurpleInputCondition cond);
58 58
556 556
557 557
558 g_free(irc); 558 g_free(irc);
559 } 559 }
560 560
561 static int irc_im_send(PurpleConnection *gc, const char *who, const char *what, PurpleMessageFlags flags) 561 static int irc_im_send(PurpleConnection *gc, PurpleMessage *msg)
562 { 562 {
563 struct irc_conn *irc = purple_connection_get_protocol_data(gc); 563 struct irc_conn *irc = purple_connection_get_protocol_data(gc);
564 char *plain; 564 char *plain;
565 const char *args[2]; 565 const char *args[2];
566 566
567 args[0] = irc_nick_skip_mode(irc, who); 567 args[0] = irc_nick_skip_mode(irc, purple_message_get_who(msg));
568 568
569 purple_markup_html_to_xhtml(what, NULL, &plain); 569 purple_markup_html_to_xhtml(purple_message_get_contents(msg),
570 NULL, &plain);
570 args[1] = plain; 571 args[1] = plain;
571 572
572 irc_cmd_privmsg(irc, "msg", NULL, args); 573 irc_cmd_privmsg(irc, "msg", NULL, args);
573 g_free(plain); 574 g_free(plain);
574 return 1; 575 return 1;

mercurial