--- a/libpurple/protocols/msn/directconn.c Thu Aug 22 00:32:28 2013 +0530 +++ b/libpurple/protocols/msn/directconn.c Thu Aug 22 01:35:32 2013 +0530 @@ -405,7 +405,7 @@ dc->progress = TRUE; dc->msg_pos += bytes_sent; - if (dc->msg_pos == p->length) { + if ((guint32)dc->msg_pos == p->length) { if (p->sent_cb != NULL) p->sent_cb(p); @@ -670,7 +670,7 @@ } /* Wait for the whole packet to arrive */ - if (dc->in_pos < 4 + packet_length) + if ((guint32)dc->in_pos < 4 + packet_length) return; switch (msn_dc_process_packet(dc, packet_length)) { @@ -684,7 +684,7 @@ } - if (dc->in_pos > packet_length + 4) { + if ((guint32)dc->in_pos > packet_length + 4) { g_memmove(dc->in_buffer, dc->in_buffer + 4 + packet_length, dc->in_pos - packet_length - 4); }