pidgin/android/libpurple2
Clone
Merge with release-2.x.y (lots of conflicts, but all trivially resolved)
* I resolved de.po by keeping what was in default already because it had been
manually merged earlier.
--- a/configure.ac Mon Feb 25 22:12:43 2013 -0800
+++ b/configure.ac Tue Feb 26 19:11:22 2013 -0500
@@ -2440,12 +2440,12 @@
dnl #######################################################################
-dnl # Check for Cyrus-SASL (for Jabber)
+dnl # Check for Cyrus-SASL (for xmpp/irc) dnl #######################################################################
dnl AC_CHECK_SIZEOF(short)
AC_CHECK_FUNCS(snprintf connect)
-AC_ARG_ENABLE(cyrus-sasl, AS_HELP_STRING([--enable-cyrus-sasl], [enable Cyrus SASL support for jabberd]), enable_cyrus_sasl=$enableval, enable_cyrus_sasl=no)
+AC_ARG_ENABLE(cyrus-sasl, AS_HELP_STRING([--enable-cyrus-sasl], [enable Cyrus SASL support for xmpp/irc]), enable_cyrus_sasl=$enableval, enable_cyrus_sasl=no) if test "x$enable_cyrus_sasl" = "xyes" ; then
AC_CHECK_LIB(sasl2, sasl_client_init, [
AM_CONDITIONAL(USE_CYRUS_SASL, true)
--- a/libpurple/account.c Mon Feb 25 22:12:43 2013 -0800
+++ b/libpurple/account.c Tue Feb 26 19:11:22 2013 -0500
@@ -1535,7 +1535,7 @@
field = purple_request_field_string_new("password", _("Original password"),
purple_request_field_string_set_masked(field, TRUE);
- if (!(prpl_info && (prpl_info->options | OPT_PROTO_PASSWORD_OPTIONAL)))
+ if (!prpl_info || !(prpl_info->options & OPT_PROTO_PASSWORD_OPTIONAL)) purple_request_field_set_required(field, TRUE);
purple_request_field_group_add_field(group, field);
@@ -1543,7 +1543,7 @@
purple_request_field_string_set_masked(field, TRUE);
- if (!(prpl_info && (prpl_info->options | OPT_PROTO_PASSWORD_OPTIONAL)))
+ if (!prpl_info || !(prpl_info->options & OPT_PROTO_PASSWORD_OPTIONAL)) purple_request_field_set_required(field, TRUE);
purple_request_field_group_add_field(group, field);
@@ -1551,7 +1551,7 @@
_("New password (again)"),
purple_request_field_string_set_masked(field, TRUE);
- if (!(prpl_info && (prpl_info->options | OPT_PROTO_PASSWORD_OPTIONAL)))
+ if (!prpl_info || !(prpl_info->options & OPT_PROTO_PASSWORD_OPTIONAL)) purple_request_field_set_required(field, TRUE);
purple_request_field_group_add_field(group, field);
--- a/libpurple/buddyicon.c Mon Feb 25 22:12:43 2013 -0800
+++ b/libpurple/buddyicon.c Tue Feb 26 19:11:22 2013 -0500
@@ -438,7 +438,7 @@
purple_conv_im_set_icon(PURPLE_CONV_IM(conv), icon_to_set);
/* icon's refcount was incremented above */
- if (icon) purple_buddy_icon_unref(icon);
+ purple_buddy_icon_unref(icon); --- a/libpurple/plugin.c Mon Feb 25 22:12:43 2013 -0800
+++ b/libpurple/plugin.c Tue Feb 26 19:11:22 2013 -0500
@@ -1362,7 +1362,7 @@
path = g_build_filename(search_path, file, NULL);
if (ext == NULL || has_file_extension(file, ext))
- plugin = purple_plugin_probe(path);
+ purple_plugin_probe(path); --- a/libpurple/pounce.c Mon Feb 25 22:12:43 2013 -0800
+++ b/libpurple/pounce.c Tue Feb 26 19:11:22 2013 -0500
@@ -245,7 +245,7 @@
g_hash_table_foreach(pounce->actions, action_parameter_list_to_xmlnode, child);
if (purple_pounce_get_save(pounce))
- child = xmlnode_new_child(node, "save");
+ xmlnode_new_child(node, "save"); --- a/libpurple/protocols/bonjour/jabber.c Mon Feb 25 22:12:43 2013 -0800
+++ b/libpurple/protocols/bonjour/jabber.c Tue Feb 26 19:11:22 2013 -0500
@@ -181,7 +181,7 @@
/* Types of messages sent by iChat */
if (html_body_font_node != NULL) {
- const char *font_face, *font_size, *font_color,
+ const char *font_face, *font_size, *ichat_balloon_color, *ichat_text_color;
font_face = xmlnode_get_attrib(html_body_font_node, "face");
@@ -189,7 +189,7 @@
font_size = xmlnode_get_attrib(html_body_font_node, "ABSZ");
font_size = _font_size_ichat_to_purple(atoi(font_size));
- font_color = xmlnode_get_attrib(html_body_font_node, "color");
+ /*font_color = xmlnode_get_attrib(html_body_font_node, "color");*/ ichat_balloon_color = xmlnode_get_attrib(html_body_node, "ichatballooncolor");
ichat_text_color = xmlnode_get_attrib(html_body_node, "ichattextcolor");
@@ -413,16 +413,18 @@
_client_socket_handler(gpointer data, gint socket, PurpleInputCondition condition)
BonjourJabberConversation *bconv = data;
- gint len, message_length;
static char message[4096];
/* Read the data from the socket */
- if ((len = recv(socket, message, sizeof(message) - 1, 0)) == -1) {
+ if ((len = recv(socket, message, sizeof(message) - 1, 0)) < 0) { /* There have been an error reading from the socket */
+ if (len != -1 || errno != EAGAIN) { const char *err = g_strerror(errno);
- purple_debug_warning("bonjour", "receive error: %s\n", err ? err : "(null)");
+ purple_debug_warning("bonjour", + "receive of %" G_GSSIZE_FORMAT " error: %s\n", + len, err ? err : "(null)"); bonjour_jabber_close_conversation(bconv);
@@ -441,19 +443,12 @@
purple_debug_warning("bonjour", "Connection closed (without stream end) by %s.\n", (name) ? name : "(unknown)");
bonjour_jabber_stream_ended(bconv);
- message[message_length] = '\0';
- while (message_length > 0 && g_ascii_iscntrl(message[message_length - 1])) {
- message[message_length - 1] = '\0';
- purple_debug_info("bonjour", "Receive: -%s- %d bytes\n", message, len);
- bonjour_parser_process(bconv, message, message_length);
+ purple_debug_info("bonjour", "Receive: -%s- %" G_GSSIZE_FORMAT " bytes\n", message, len); + bonjour_parser_process(bconv, message, len); struct _stream_start_data {
--- a/libpurple/protocols/jabber/auth_digest_md5.c Mon Feb 25 22:12:43 2013 -0800
+++ b/libpurple/protocols/jabber/auth_digest_md5.c Tue Feb 26 19:11:22 2013 -0500
@@ -184,8 +184,8 @@
dec_in = (char *)purple_base64_decode(enc_in, NULL);
purple_debug_misc("jabber", "decoded challenge (%"
G_GSIZE_FORMAT "): %s\n",
- dec_in != NULL ? strlen(dec_in) : 0,
- dec_in != NULL ? dec_in : "(null)");
parts = jabber_auth_digest_md5_parse(dec_in);
--- a/libpurple/protocols/jabber/google/google_session.c Mon Feb 25 22:12:43 2013 -0800
+++ b/libpurple/protocols/jabber/google/google_session.c Tue Feb 26 19:11:22 2013 -0500
@@ -501,8 +501,7 @@
for (codec_element = xmlnode_get_child(session->description, "payload-type");
codec_element; codec_element = codec_element->next) {
- const char *id, *encoding_name, *clock_rate,
- *width, *height, *framerate;
+ const char *id, *encoding_name, *clock_rate; if (codec_element->name &&
strcmp(codec_element->name, "payload-type"))
@@ -518,10 +517,10 @@
codec_element, "clockrate");
- width = xmlnode_get_attrib(codec_element, "width");
+ /*width = xmlnode_get_attrib(codec_element, "width"); height = xmlnode_get_attrib(codec_element, "height");
framerate = xmlnode_get_attrib(
- codec_element, "framerate");
+ codec_element, "framerate");*/ @@ -716,7 +715,7 @@
for (; codec_element; codec_element = codec_element->next) {
const gchar *xmlns, *encoding_name, *id,
- *clock_rate, *width, *height, *framerate;
gboolean video_codec = FALSE;
if (!purple_strequal(codec_element->name, "payload-type"))
@@ -731,10 +730,10 @@
codec_element, "clockrate");
- width = xmlnode_get_attrib(codec_element, "width");
+ /*width = xmlnode_get_attrib(codec_element, "width"); height = xmlnode_get_attrib(codec_element, "height");
framerate = xmlnode_get_attrib(
- codec_element, "framerate");
+ codec_element, "framerate");*/ --- a/libpurple/protocols/jabber/jabber.c Mon Feb 25 22:12:43 2013 -0800
+++ b/libpurple/protocols/jabber/jabber.c Tue Feb 26 19:11:22 2013 -0500
@@ -3295,7 +3295,7 @@
JabberStream *js = purple_connection_get_protocol_data(gc);
JabberBuddyResource *jbr = NULL;
purple_debug_error("jabber",
@@ -3303,26 +3303,11 @@
- if((resource = jabber_get_resource(who)) != NULL) {
- /* they've specified a resource, no need to ask or
- * default or anything, just do it */
- jb = jabber_buddy_find(js, who, FALSE);
- jbr = jabber_buddy_find_resource(jb, resource);
- if (type & PURPLE_MEDIA_AUDIO &&
- !jabber_resource_has_capability(jbr,
- JINGLE_APP_RTP_SUPPORT_AUDIO) &&
- jabber_resource_has_capability(jbr, NS_GOOGLE_VOICE))
- return jabber_google_session_initiate(js, who, type);
- return jingle_rtp_initiate_media(js, who, type);
jb = jabber_buddy_find(js, who, FALSE);
- if(!jb || !jb->resources) {
+ if(!jb || !jb->resources || + (((resource = jabber_get_resource(who)) != NULL) + && (jbr = jabber_buddy_find_resource(jb, resource)) == NULL)) { /* no resources online, we're trying to initiate with someone
* whose presence we're not subscribed to, or
* someone who is offline. Let's inform the user */
@@ -3330,8 +3315,10 @@
msg = g_strdup_printf(_("Unable to initiate media with %s: invalid JID"), who);
- } else if(jb->subscription & JABBER_SUB_TO) {
+ } else if(jb->subscription & JABBER_SUB_TO && !jb->resources) { msg = g_strdup_printf(_("Unable to initiate media with %s: user is not online"), who);
+ msg = g_strdup_printf(_("Unable to initiate media with %s: resource is not online"), who); msg = g_strdup_printf(_("Unable to initiate media with %s: not subscribed to user presence"), who);
@@ -3339,7 +3326,21 @@
purple_notify_error(account, _("Media Initiation Failed"),
_("Media Initiation Failed"), msg);
+ } else if(jbr != NULL) { + /* they've specified a resource, no need to ask or + * default or anything, just do it */ + if (type & PURPLE_MEDIA_AUDIO && + !jabber_resource_has_capability(jbr, + JINGLE_APP_RTP_SUPPORT_AUDIO) && + jabber_resource_has_capability(jbr, NS_GOOGLE_VOICE)) + return jabber_google_session_initiate(js, who, type); + return jingle_rtp_initiate_media(js, who, type); } else if(!jb->resources->next) {
/* only 1 resource online (probably our most common case)
* so no need to ask who to initiate with */
--- a/libpurple/protocols/jabber/jingle/rtp.c Mon Feb 25 22:12:43 2013 -0800
+++ b/libpurple/protocols/jabber/jingle/rtp.c Tue Feb 26 19:11:22 2013 -0500
@@ -851,7 +851,8 @@
- purple_debug_error("jingle-rtp", "Could not find buddy's resource\n");
+ purple_debug_error("jingle-rtp", "Could not find buddy's resource - %s\n", resource); if (jabber_resource_has_capability(jbr, JINGLE_TRANSPORT_ICEUDP)) {
--- a/libpurple/protocols/msn/directconn.c Mon Feb 25 22:12:43 2013 -0800
+++ b/libpurple/protocols/msn/directconn.c Tue Feb 26 19:11:22 2013 -0500
@@ -39,18 +39,18 @@
msn_dc_calculate_nonce_hash(MsnDirectConnNonceType type,
- const guchar nonce[16], gchar nonce_hash[37])
+ const guchar *nonce, gsize nonce_len, gchar nonce_hash[37]) if (type == DC_NONCE_SHA1) {
PurpleCipher *cipher = purple_ciphers_find_cipher("sha1");
PurpleCipherContext *context = purple_cipher_context_new(cipher, NULL);
- purple_cipher_context_append(context, nonce, sizeof(nonce));
+ purple_cipher_context_append(context, nonce, nonce_len); purple_cipher_context_digest(context, sizeof(digest), digest, NULL);
purple_cipher_context_destroy(context);
} else if (type == DC_NONCE_PLAIN) {
- memcpy(digest, nonce, 16);
+ memcpy(digest, nonce, nonce_len); @@ -92,7 +92,7 @@
- msn_dc_calculate_nonce_hash(dc->nonce_type, dc->nonce, dc->nonce_hash);
+ msn_dc_calculate_nonce_hash(dc->nonce_type, dc->nonce, sizeof(dc->nonce), dc->nonce_hash); if (purple_debug_is_verbose())
purple_debug_info("msn", "DC %p generated nonce %s\n", dc, dc->nonce_hash);
@@ -494,10 +494,10 @@
if (packet_length != DC_NONCE_PACKET_SIZE)
- memcpy(nonce, dc->in_buffer + 4 + DC_NONCE_PACKET_NONCE, 16);
+ memcpy(nonce, dc->in_buffer + 4 + DC_NONCE_PACKET_NONCE, sizeof(nonce)); if (dc->nonce_type == DC_NONCE_PLAIN) {
- if (memcmp(dc->nonce, nonce, 16) == 0) {
+ if (memcmp(dc->nonce, nonce, sizeof(nonce)) == 0) { "Nonce from buddy request and nonce from DC attempt match, "
"allowing direct connection\n");
@@ -510,7 +510,7 @@
} else if (dc->nonce_type == DC_NONCE_SHA1) {
- msn_dc_calculate_nonce_hash(dc->nonce_type, nonce, nonce_hash);
+ msn_dc_calculate_nonce_hash(dc->nonce_type, nonce, sizeof(nonce), nonce_hash); if (g_str_equal(dc->remote_nonce, nonce_hash)) {
--- a/libpurple/protocols/mxit/login.c Mon Feb 25 22:12:43 2013 -0800
+++ b/libpurple/protocols/mxit/login.c Tue Feb 26 19:11:22 2013 -0500
@@ -762,7 +762,7 @@
* if we don't have any info saved from a previous login, we need to get it from the MXit WAP site.
* we do cache it, so this step is only done on the very first login for each account.
- if ( ( session->distcode == NULL ) || ( !*session->distcode ) ) {
+ if ( !*session->distcode ) { /* this must be the very first login, so we need to retrieve the user information */
get_clientinfo( session );
--- a/libpurple/protocols/mxit/multimx.c Mon Feb 25 22:12:43 2013 -0800
+++ b/libpurple/protocols/mxit/multimx.c Tue Feb 26 19:11:22 2013 -0500
@@ -275,7 +275,6 @@
void multimx_invite(struct MXitSession* session, struct contact* contact, const char* creator)
- struct multimx* multimx = NULL;
purple_debug_info(MXIT_PLUGIN_ID, "Groupchat invite to '%s' (roomid='%s') by '%s'\n", contact->alias, contact->username, creator);
@@ -284,7 +283,7 @@
- multimx = room_create(session, contact->username, contact->alias, STATE_INVITED);
+ room_create(session, contact->username, contact->alias, STATE_INVITED); components = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, g_free);
g_hash_table_insert(components, g_strdup("room"), g_strdup(contact->alias));
--- a/libpurple/protocols/novell/nmrtf.c Mon Feb 25 22:12:43 2013 -0800
+++ b/libpurple/protocols/novell/nmrtf.c Tue Feb 26 19:11:22 2013 -0500
@@ -315,7 +315,6 @@
purple_debug_info("novell", "Unhandled font charset %d\n", font->charset);
--- a/libpurple/protocols/novell/novell.c Mon Feb 25 22:12:43 2013 -0800
+++ b/libpurple/protocols/novell/novell.c Tue Feb 26 19:11:22 2013 -0500
@@ -1281,7 +1281,6 @@
PurpleBuddy *buddy = NULL;
- const char *text = NULL;
const char *fname = NULL;
@@ -1324,7 +1323,6 @@
user_record = nm_contact_get_user_record(contact);
status = nm_user_record_get_status(user_record);
- text = nm_user_record_get_status_text(user_record);
_update_buddy_status(user, buddy, status, time(0));
@@ -3314,11 +3312,9 @@
for (node = purple_connection_get_account(gc)->permit; node; node = node->next) {
dn = nm_lookup_dn(user, (char *)node->data);
user_record = nm_find_user_record(user, dn);
- name = nm_user_record_get_display_id(user_record);
if (!g_slist_find_custom(user->allow_list,
dn, (GCompareFunc)purple_utf8_strcasecmp)) {
--- a/libpurple/protocols/oscar/userinfo.c Mon Feb 25 22:12:43 2013 -0800
+++ b/libpurple/protocols/oscar/userinfo.c Tue Feb 26 19:11:22 2013 -0500
@@ -481,10 +481,6 @@
oscar_user_info_convert_and_add_hyperlink(account, od, user_info, _("Web Page"), info->email, "");
- alias = purple_buddy_get_alias(buddy);
purple_notify_userinfo(gc, who, user_info, NULL, NULL);
purple_notify_user_info_destroy(user_info);
--- a/libpurple/protocols/sametime/sametime.c Mon Feb 25 22:12:43 2013 -0800
+++ b/libpurple/protocols/sametime/sametime.c Tue Feb 26 19:11:22 2013 -0500
@@ -987,7 +987,6 @@
struct mwSametimeUser *stuser;
GList *gl, *gtl, *ul, *utl;
@@ -1001,7 +1000,7 @@
for(; ul; ul = ul->next) {
stuser = (struct mwSametimeUser *) ul->data;
- buddy = buddy_ensure(gc, group, stuser);
+ buddy_ensure(gc, group, stuser); --- a/libpurple/protocols/silc/buddy.c Mon Feb 25 22:12:43 2013 -0800
+++ b/libpurple/protocols/silc/buddy.c Tue Feb 26 19:11:22 2013 -0500
@@ -1546,17 +1546,13 @@
- if (client_entry->nickname)
- /* TODO: Check whether it's correct to call add_pair_html,
- or if we should be using add_pair_plaintext */
- purple_notify_user_info_add_pair_html(user_info, _("Nickname"),
- client_entry->nickname);
- if (client_entry->username && client_entry->hostname) {
- g_snprintf(tmp, sizeof(tmp), "%s@%s", client_entry->username, client_entry->hostname);
- /* TODO: Check whether it's correct to call add_pair_html,
- or if we should be using add_pair_plaintext */
- purple_notify_user_info_add_pair_html(user_info, _("Username"), tmp);
+ /* TODO: Check whether it's correct to call add_pair_html, + or if we should be using add_pair_plaintext */ + purple_notify_user_info_add_pair_html(user_info, _("Nickname"), client_entry->nickname); + g_snprintf(tmp, sizeof(tmp), "%s@%s", client_entry->username, client_entry->hostname); + /* TODO: Check whether it's correct to call add_pair_html, + or if we should be using add_pair_plaintext */ + purple_notify_user_info_add_pair_html(user_info, _("Username"), tmp); if (client_entry->mode) {
memset(tmp, 0, sizeof(tmp));
silcpurple_get_umode_string(client_entry->mode,
--- a/libpurple/protocols/silc/ops.c Mon Feb 25 22:12:43 2013 -0800
+++ b/libpurple/protocols/silc/ops.c Tue Feb 26 19:11:22 2013 -0500
@@ -216,13 +216,10 @@
serv_got_chat_in(gc, purple_conv_chat_get_id(PURPLE_CONV_CHAT(convo)),
+ sender->nickname, cflags, - serv_got_im(gc, sender->nickname ?
- sender->nickname : "<unknown>",
+ serv_got_im(gc, sender->nickname, tmp, cflags, time(NULL));
purple_imgstore_unref_by_id(imgid);
@@ -363,15 +360,14 @@
PurpleConnection *gc = client->application;
SilcPurple sg = purple_connection_get_protocol_data(gc);
- PurpleConversation *convo = NULL;
+ PurpleConversation *convo;
- /* XXX - Should this be PURPLE_CONV_TYPE_IM? */
- convo = purple_find_conversation_with_account(PURPLE_CONV_TYPE_ANY,
+ /* XXX - Should this be PURPLE_CONV_TYPE_IM? */ + convo = purple_find_conversation_with_account(PURPLE_CONV_TYPE_ANY, sender->nickname, sg->account);
if (flags & SILC_MESSAGE_FLAG_SIGNED &&
--- a/libpurple/protocols/simple/simple.c Mon Feb 25 22:12:43 2013 -0800
+++ b/libpurple/protocols/simple/simple.c Tue Feb 26 19:11:22 2013 -0500
@@ -902,11 +902,11 @@
for(item = xmlnode_get_child(isc, "contact"); item; item = xmlnode_get_next_twin(item))
- const char *uri, *name, *groups;
uri = xmlnode_get_attrib(item, "uri");
- name = xmlnode_get_attrib(item, "name");
- groups = xmlnode_get_attrib(item, "groups");
+ /*name = xmlnode_get_attrib(item, "name"); + groups = xmlnode_get_attrib(item, "groups");*/ purple_debug_info("simple", "URI->%s\n", uri);
buddy_name = g_strdup_printf("sip:%s", uri);
--- a/libpurple/protocols/yahoo/yahoo_doodle.c Mon Feb 25 22:12:43 2013 -0800
+++ b/libpurple/protocols/yahoo/yahoo_doodle.c Tue Feb 26 19:11:22 2013 -0500
@@ -104,20 +104,18 @@
account = purple_connection_get_account(gc);
- wb = purple_whiteboard_get_session(account, to);
+ if(purple_whiteboard_get_session(account, to) == NULL) /* Insert this 'session' in the list. At this point, it's only a
- wb = purple_whiteboard_create(account, to, DOODLE_STATE_REQUESTING);
+ purple_whiteboard_create(account, to, DOODLE_STATE_REQUESTING); /* NOTE Perhaps some careful handling of remote assumed established
--- a/libpurple/protocols/zephyr/zephyr.c Mon Feb 25 22:12:43 2013 -0800
+++ b/libpurple/protocols/zephyr/zephyr.c Tue Feb 26 19:11:22 2013 -0500
@@ -930,12 +930,10 @@
- for(i=0;i<tree->num_children;i++){
- if (tree->children[i]) {
- free_parse_tree(tree->children[i]);
- g_free(tree->children[i]);
+ for(i=0;i<tree->num_children;i++){ + if (tree->children[i]) { + free_parse_tree(tree->children[i]); + g_free(tree->children[i]); if ((tree != &null_parse_tree) && (tree->contents != NULL))
@@ -1522,10 +1520,10 @@
while (fgets(buff, BUFSIZ, fd)) {
- if (!(b = purple_find_buddy(purple_connection_get_account(gc), buff))) {
+ if (!purple_find_buddy(purple_connection_get_account(gc), buff)) { char *stripped_user = zephyr_strip_local_realm(zephyr,buff);
purple_debug_info("zephyr","stripped_user %s\n",stripped_user);
- if (!(b = purple_find_buddy(purple_connection_get_account(gc),stripped_user))){
+ if (!purple_find_buddy(purple_connection_get_account(gc),stripped_user)) { b = purple_buddy_new(purple_connection_get_account(gc), stripped_user, NULL);
purple_blist_add_buddy(b, NULL, g, NULL);
--- a/libpurple/smiley.c Mon Feb 25 22:12:43 2013 -0800
+++ b/libpurple/smiley.c Tue Feb 26 19:11:22 2013 -0500
@@ -114,7 +114,7 @@
static PurpleSmiley *purple_smiley_create(const char *shortcut);
-static PurpleSmiley *purple_smiley_load_file(const char *shortcut, const char *checksum,
+static void purple_smiley_load_file(const char *shortcut, const char *checksum, @@ -227,10 +227,9 @@
*********************************************************************/
parse_smiley(xmlnode *smiley_node)
const char *shortcut = NULL;
const char *checksum = NULL;
const char *filename = NULL;
@@ -240,11 +239,9 @@
filename = xmlnode_get_attrib(smiley_node, XML_FILENAME_ATRIB_TAG);
if ((shortcut == NULL) || (checksum == NULL) || (filename == NULL))
- smiley = purple_smiley_load_file(shortcut, checksum, filename);
+ purple_smiley_load_file(shortcut, checksum, filename); @@ -272,7 +269,6 @@
smiley_node = xmlnode_get_child(smileyset_node, XML_SMILEY_TAG);
for (; smiley_node != NULL;
smiley_node = xmlnode_get_next_twin(smiley_node)) {
parse_smiley(smiley_node);
@@ -473,7 +469,7 @@
purple_smiley_load_file(const char *shortcut, const char *checksum, const char *filename)
PurpleSmiley *smiley = NULL;
@@ -481,18 +477,20 @@
- g_return_val_if_fail(shortcut != NULL, NULL);
- g_return_val_if_fail(checksum != NULL, NULL);
- g_return_val_if_fail(filename != NULL, NULL);
+ g_return_if_fail(shortcut != NULL); + g_return_if_fail(checksum != NULL); + g_return_if_fail(filename != NULL); fullpath = get_file_full_path(filename);
+ purple_debug_error(SMILEYS_LOG_ID, "Path for filename %s doesn't exist\n", filename); smiley = purple_smiley_create(shortcut);
smiley->checksum = g_strdup(checksum);
@@ -505,7 +503,6 @@
--- a/pidgin/gtkconv.c Mon Feb 25 22:12:43 2013 -0800
+++ b/pidgin/gtkconv.c Tue Feb 26 19:11:22 2013 -0500
@@ -4454,7 +4454,7 @@
- matches = g_list_remove(matches, matches->data);
--- a/pidgin/gtkmain.c Mon Feb 25 22:12:43 2013 -0800
+++ b/pidgin/gtkmain.c Tue Feb 26 19:11:22 2013 -0500
@@ -433,7 +433,6 @@
int sig_indx; /* for setting up signal catching */
- RETSIGTYPE (*prev_sig_disp)(int);
GIOChannel *signal_channel;
@@ -565,7 +564,7 @@
for(sig_indx = 0; catch_sig_list[sig_indx] != -1; ++sig_indx) {
- if((prev_sig_disp = signal(catch_sig_list[sig_indx], sighandler)) == SIG_ERR) {
+ if(signal(catch_sig_list[sig_indx], sighandler) == SIG_ERR) { snprintf(errmsg, sizeof(errmsg), "Warning: couldn't set signal %d for catching",
catch_sig_list[sig_indx]);
@@ -577,7 +576,7 @@
for(sig_indx = 0; ignore_sig_list[sig_indx] != -1; ++sig_indx) {
- if((prev_sig_disp = signal(ignore_sig_list[sig_indx], SIG_IGN)) == SIG_ERR) {
+ if(signal(ignore_sig_list[sig_indx], SIG_IGN) == SIG_ERR) { snprintf(errmsg, sizeof(errmsg), "Warning: couldn't set signal %d to ignore",
ignore_sig_list[sig_indx]);
--- a/pidgin/gtknotify.c Mon Feb 25 22:12:43 2013 -0800
+++ b/pidgin/gtknotify.c Tue Feb 26 19:11:22 2013 -0500
@@ -932,7 +932,7 @@
gtk_list_store_clear(data->model);
- pixbuf = pidgin_create_prpl_icon(purple_connection_get_account(gc), 0.5);
+ pixbuf = pidgin_create_prpl_icon(purple_connection_get_account(gc), PIDGIN_PRPL_ICON_SMALL); for (row = results->rows; row != NULL; row = row->next) {
--- a/pidgin/gtkpounce.c Mon Feb 25 22:12:43 2013 -0800
+++ b/pidgin/gtkpounce.c Tue Feb 26 19:11:22 2013 -0500
@@ -1433,10 +1433,8 @@
if (purple_pounce_action_is_enabled(pounce, "open-window"))
- conv = purple_find_conversation_with_account(PURPLE_CONV_TYPE_IM, pouncee, account);
- conv = purple_conversation_new(PURPLE_CONV_TYPE_IM, account, pouncee);
+ if (!purple_find_conversation_with_account(PURPLE_CONV_TYPE_IM, pouncee, account)) + purple_conversation_new(PURPLE_CONV_TYPE_IM, account, pouncee); if (purple_pounce_action_is_enabled(pounce, "popup-notify"))
--- a/pidgin/gtksourceundomanager.c Mon Feb 25 22:12:43 2013 -0800
+++ b/pidgin/gtksourceundomanager.c Tue Feb 26 19:11:22 2013 -0500
@@ -100,9 +100,6 @@
-/* INVALID is a pointer to an invalid action */
-#define INVALID ((void *) "IA")
struct _GtkSourceUndoManagerPrivate
@@ -127,9 +124,7 @@
guint modified_undoing_group : 1;
/* Pointer to the action (in the action list) marked as "modified".
- * It is NULL when no action is marked as "modified".
- * It is INVALID when the action marked as "modified" has been removed
- * from the action list (freeing the list or resizing it) */
+ * It is NULL when no action is marked as "modified". */ GtkSourceUndoAction *modified_action;
@@ -708,7 +703,7 @@
--um->priv->num_of_groups;
- um->priv->modified_action = INVALID;
+ um->priv->modified_action = NULL; gtk_source_undo_action_free (action);
@@ -901,7 +896,7 @@
--um->priv->num_of_groups;
- um->priv->modified_action = INVALID;
+ um->priv->modified_action = NULL; gtk_source_undo_action_free (action);
@@ -942,7 +937,7 @@
--um->priv->num_of_groups;
if (undo_action->modified)
- um->priv->modified_action = INVALID;
+ um->priv->modified_action = NULL; gtk_source_undo_action_free (undo_action);
@@ -1167,9 +1162,7 @@
if (um->priv->modified_action != NULL)
- if (um->priv->modified_action != INVALID)
- um->priv->modified_action->modified = FALSE;
+ um->priv->modified_action->modified = FALSE; um->priv->modified_action = NULL;
--- a/pidgin/gtkutils.c Mon Feb 25 22:12:43 2013 -0800
+++ b/pidgin/gtkutils.c Tue Feb 26 19:11:22 2013 -0500
@@ -1556,12 +1556,10 @@
const char *itemname = NULL;
const char * const *langs;
langs = g_get_language_names();
- for (i = 0; langs[i]; i++) {
- g_snprintf(key, sizeof(key), "Name[%s]", langs[i]);
+ g_snprintf(key, sizeof(key), "Name[%s]", langs[0]); itemname = purple_desktop_item_get_string(item, key);
--- a/pidgin/plugins/gevolution/add_buddy_dialog.c Mon Feb 25 22:12:43 2013 -0800
+++ b/pidgin/plugins/gevolution/add_buddy_dialog.c Tue Feb 26 19:11:22 2013 -0500
@@ -183,7 +183,7 @@
- pixbuf = pidgin_create_prpl_icon(account, 0.5);
+ pixbuf = pidgin_create_prpl_icon(account, PIDGIN_PRPL_ICON_SMALL); for (l = list; l != NULL; l = l->next)
@@ -602,7 +602,7 @@
- pixbuf = pidgin_create_prpl_icon(account, 0.5);
+ pixbuf = pidgin_create_prpl_icon(account, PIDGIN_PRPL_ICON_SMALL); gtk_list_store_append(dialog->model, &iter);
--- a/pidgin/plugins/gevolution/gevolution.c Mon Feb 25 22:12:43 2013 -0800
+++ b/pidgin/plugins/gevolution/gevolution.c Tue Feb 26 19:11:22 2013 -0500
@@ -489,7 +489,7 @@
gtk_list_store_append(model, &iter);
- pixbuf = pidgin_create_prpl_icon(account, 0.5);
+ pixbuf = pidgin_create_prpl_icon(account, PIDGIN_PRPL_ICON_SMALL); if ((pixbuf != NULL) && (!purple_account_is_connected(account)))
gdk_pixbuf_saturate_and_pixelate(pixbuf, pixbuf, 0.0, FALSE);