pidgin: 2c44b7f2: Remove trailing whitespace

rlaager at pidgin.im rlaager at pidgin.im
Tue Jan 4 02:01:24 EST 2011


----------------------------------------------------------------------
Revision: 2c44b7f22887587ec1a6d9546b6744819772518a
Parent:   2fed09cd14224def03a25657180d622531743e24
Author:   rlaager at pidgin.im
Date:     01/04/11 01:55:30
Branch:   im.pidgin.pidgin
URL: http://d.pidgin.im/viewmtn/revision/info/2c44b7f22887587ec1a6d9546b6744819772518a

Changelog: 

Remove trailing whitespace

Changes against parent 2fed09cd14224def03a25657180d622531743e24

  patched  finch/finch.c
  patched  finch/getopt.c
  patched  finch/getopt1.c
  patched  finch/gntaccount.c
  patched  finch/gntblist.c
  patched  finch/gntcertmgr.c
  patched  finch/gntconn.c
  patched  finch/gntconv.c
  patched  finch/gntft.c
  patched  finch/gntmedia.c
  patched  finch/gntnotify.c
  patched  finch/gntplugin.c
  patched  finch/gntprefs.c
  patched  finch/gntrequest.c
  patched  finch/gntsound.c
  patched  finch/gntstatus.c
  patched  finch/gntui.c
  patched  finch/libgnt/gntbindable.c
  patched  finch/libgnt/gntbox.c
  patched  finch/libgnt/gntcheckbox.c
  patched  finch/libgnt/gntclipboard.c
  patched  finch/libgnt/gntentry.c
  patched  finch/libgnt/gntfilesel.c
  patched  finch/libgnt/gntmain.c
  patched  finch/libgnt/gntprogressbar.c
  patched  finch/libgnt/gntstyle.c
  patched  finch/libgnt/gnttextview.c
  patched  finch/libgnt/gnttree.c
  patched  finch/libgnt/gntwidget.c
  patched  finch/libgnt/gntwm.c
  patched  finch/libgnt/test/combo.c
  patched  finch/libgnt/test/focus.c
  patched  finch/libgnt/test/tv.c
  patched  finch/libgnt/test/wm.c
  patched  finch/libgnt/wms/s.c
  patched  finch/plugins/gntgf.c
  patched  libpurple/certificate.c
  patched  libpurple/conversation.c
  patched  libpurple/example/nullclient.c
  patched  libpurple/ft.c
  patched  libpurple/media/backend-fs2.c
  patched  libpurple/media/candidate.c
  patched  libpurple/media/codec.c
  patched  libpurple/media.c
  patched  libpurple/mediamanager.c
  patched  libpurple/network.c
  patched  libpurple/plugins/autoaccept.c
  patched  libpurple/plugins/codeinline.c
  patched  libpurple/plugins/log_reader.c
  patched  libpurple/plugins/mono/loader/blist-glue.c
  patched  libpurple/plugins/mono/loader/debug-glue.c
  patched  libpurple/plugins/mono/loader/mono-helper.c
  patched  libpurple/plugins/mono/loader/signal-glue.c
  patched  libpurple/plugins/mono/loader/status-glue.c
  patched  libpurple/plugins/offlinemsg.c
  patched  libpurple/plugins/psychic.c
  patched  libpurple/plugins/ssl/ssl-nss.c
  patched  libpurple/plugins/tcl/tcl_cmds.c
  patched  libpurple/plugins/tcl/tcl_glib.c
  patched  libpurple/plugins/tcl/tcl_ref.c
  patched  libpurple/plugins/tcl/tcl_signals.c
  patched  libpurple/protocols/gg/buddylist.c
  patched  libpurple/protocols/gg/gg.c
  patched  libpurple/protocols/gg/lib/common.c
  patched  libpurple/protocols/gg/lib/dcc7.c
  patched  libpurple/protocols/gg/lib/events.c
  patched  libpurple/protocols/gg/lib/libgadu.c
  patched  libpurple/protocols/gg/lib/pubdir.c
  patched  libpurple/protocols/gg/lib/pubdir50.c
  patched  libpurple/protocols/gg/lib/resolver.c
  patched  libpurple/protocols/gg/lib/sha1.c
  patched  libpurple/protocols/irc/cmds.c
  patched  libpurple/protocols/irc/dcc_send.c
  patched  libpurple/protocols/irc/msgs.c
  patched  libpurple/protocols/irc/parse.c
  patched  libpurple/protocols/jabber/buddy.c
  patched  libpurple/protocols/jabber/caps.c
  patched  libpurple/protocols/jabber/data.c
  patched  libpurple/protocols/jabber/disco.c
  patched  libpurple/protocols/jabber/google/google.c
  patched  libpurple/protocols/jabber/google/google_session.c
  patched  libpurple/protocols/jabber/google/jingleinfo.c
  patched  libpurple/protocols/jabber/google/relay.c
  patched  libpurple/protocols/jabber/jabber.c
  patched  libpurple/protocols/jabber/jingle/content.c
  patched  libpurple/protocols/jabber/jingle/iceudp.c
  patched  libpurple/protocols/jabber/jingle/jingle.c
  patched  libpurple/protocols/jabber/jingle/rawudp.c
  patched  libpurple/protocols/jabber/jingle/rtp.c
  patched  libpurple/protocols/jabber/jingle/session.c
  patched  libpurple/protocols/jabber/jingle/transport.c
  patched  libpurple/protocols/jabber/jutil.c
  patched  libpurple/protocols/jabber/message.c
  patched  libpurple/protocols/jabber/parser.c
  patched  libpurple/protocols/jabber/si.c
  patched  libpurple/protocols/jabber/usernick.c
  patched  libpurple/protocols/jabber/win32/posix.uname.c
  patched  libpurple/protocols/msn/contact.c
  patched  libpurple/protocols/msn/directconn.c
  patched  libpurple/protocols/msn/error.c
  patched  libpurple/protocols/msn/msg.c
  patched  libpurple/protocols/msn/msn.c
  patched  libpurple/protocols/msn/notification.c
  patched  libpurple/protocols/msn/oim.c
  patched  libpurple/protocols/msn/p2p.c
  patched  libpurple/protocols/msn/slpmsg.c
  patched  libpurple/protocols/msn/slpmsg_part.c
  patched  libpurple/protocols/msn/state.c
  patched  libpurple/protocols/msn/switchboard.c
  patched  libpurple/protocols/msn/tlv.c
  patched  libpurple/protocols/mxit/chunk.c
  patched  libpurple/protocols/mxit/login.c
  patched  libpurple/protocols/mxit/markup.c
  patched  libpurple/protocols/mxit/multimx.c
  patched  libpurple/protocols/mxit/mxit.c
  patched  libpurple/protocols/mxit/profile.c
  patched  libpurple/protocols/mxit/protocol.c
  patched  libpurple/protocols/mxit/roster.c
  patched  libpurple/protocols/novell/novell.c
  patched  libpurple/protocols/null/nullprpl.c
  patched  libpurple/protocols/oscar/authorization.c
  patched  libpurple/protocols/oscar/encoding.c
  patched  libpurple/protocols/oscar/family_icq.c
  patched  libpurple/protocols/oscar/family_locate.c
  patched  libpurple/protocols/oscar/odc.c
  patched  libpurple/protocols/oscar/oscar.c
  patched  libpurple/protocols/qq/buddy_opt.c
  patched  libpurple/protocols/qq/qq.c
  patched  libpurple/protocols/qq/qq_crypt.c
  patched  libpurple/protocols/sametime/sametime.c
  patched  libpurple/protocols/silc/silc.c
  patched  libpurple/protocols/silc10/buddy.c
  patched  libpurple/protocols/silc10/chat.c
  patched  libpurple/protocols/silc10/ops.c
  patched  libpurple/protocols/silc10/silc.c
  patched  libpurple/protocols/silc10/util.c
  patched  libpurple/protocols/silc10/wb.c
  patched  libpurple/protocols/simple/simple.c
  patched  libpurple/protocols/yahoo/libymsg.c
  patched  libpurple/protocols/yahoo/util.c
  patched  libpurple/protocols/yahoo/yahoo_aliases.c
  patched  libpurple/protocols/yahoo/yahoo_friend.c
  patched  libpurple/protocols/yahoo/yahoochat.c
  patched  libpurple/protocols/zephyr/ZAsyncLocate.c
  patched  libpurple/protocols/zephyr/ZCkAuth.c
  patched  libpurple/protocols/zephyr/ZCkIfNot.c
  patched  libpurple/protocols/zephyr/ZClosePort.c
  patched  libpurple/protocols/zephyr/ZCmpUID.c
  patched  libpurple/protocols/zephyr/ZCmpUIDP.c
  patched  libpurple/protocols/zephyr/ZFlsLocs.c
  patched  libpurple/protocols/zephyr/ZFlsSubs.c
  patched  libpurple/protocols/zephyr/ZFmtAuth.c
  patched  libpurple/protocols/zephyr/ZFmtList.c
  patched  libpurple/protocols/zephyr/ZFmtNotice.c
  patched  libpurple/protocols/zephyr/ZFmtRaw.c
  patched  libpurple/protocols/zephyr/ZFmtRawLst.c
  patched  libpurple/protocols/zephyr/ZFmtSmRLst.c
  patched  libpurple/protocols/zephyr/ZFmtSmRaw.c
  patched  libpurple/protocols/zephyr/ZFreeNot.c
  patched  libpurple/protocols/zephyr/ZGetLocs.c
  patched  libpurple/protocols/zephyr/ZGetSender.c
  patched  libpurple/protocols/zephyr/ZGetSubs.c
  patched  libpurple/protocols/zephyr/ZGetWGPort.c
  patched  libpurple/protocols/zephyr/ZIfNotice.c
  patched  libpurple/protocols/zephyr/ZInit.c
  patched  libpurple/protocols/zephyr/ZLocations.c
  patched  libpurple/protocols/zephyr/ZMakeAscii.c
  patched  libpurple/protocols/zephyr/ZMkAuth.c
  patched  libpurple/protocols/zephyr/ZNewLocU.c
  patched  libpurple/protocols/zephyr/ZOpenPort.c
  patched  libpurple/protocols/zephyr/ZParseNot.c
  patched  libpurple/protocols/zephyr/ZPeekIfNot.c
  patched  libpurple/protocols/zephyr/ZPeekNot.c
  patched  libpurple/protocols/zephyr/ZPeekPkt.c
  patched  libpurple/protocols/zephyr/ZPending.c
  patched  libpurple/protocols/zephyr/ZReadAscii.c
  patched  libpurple/protocols/zephyr/ZRecvNot.c
  patched  libpurple/protocols/zephyr/ZRecvPkt.c
  patched  libpurple/protocols/zephyr/ZRetSubs.c
  patched  libpurple/protocols/zephyr/ZSendList.c
  patched  libpurple/protocols/zephyr/ZSendNot.c
  patched  libpurple/protocols/zephyr/ZSendPkt.c
  patched  libpurple/protocols/zephyr/ZSendRLst.c
  patched  libpurple/protocols/zephyr/ZSendRaw.c
  patched  libpurple/protocols/zephyr/ZSetDest.c
  patched  libpurple/protocols/zephyr/ZSetFD.c
  patched  libpurple/protocols/zephyr/ZSetSrv.c
  patched  libpurple/protocols/zephyr/ZSubs.c
  patched  libpurple/protocols/zephyr/ZVariables.c
  patched  libpurple/protocols/zephyr/ZWait4Not.c
  patched  libpurple/protocols/zephyr/ZhmStat.c
  patched  libpurple/protocols/zephyr/Zinternal.c
  patched  libpurple/protocols/zephyr/zephyr.c
  patched  libpurple/prpl.c
  patched  libpurple/request.c
  patched  libpurple/theme-manager.c
  patched  libpurple/util.c
  patched  libpurple/win32/giowin32.c
  patched  pidgin/gtkaccount.c
  patched  pidgin/gtkblist-theme-loader.c
  patched  pidgin/gtkblist.c
  patched  pidgin/gtkconv.c
  patched  pidgin/gtkdebug.c
  patched  pidgin/gtkdocklet-gtk.c
  patched  pidgin/gtkft.c
  patched  pidgin/gtkimhtml.c
  patched  pidgin/gtkimhtmltoolbar.c
  patched  pidgin/gtkmedia.c
  patched  pidgin/gtkprefs.c
  patched  pidgin/gtkrequest.c
  patched  pidgin/gtkscrollbook.c
  patched  pidgin/gtksound.c
  patched  pidgin/gtkthemes.c
  patched  pidgin/minidialog.c
  patched  pidgin/pidgintooltip.c
  patched  pidgin/plugins/cap/cap.c
  patched  pidgin/plugins/convcolors.c
  patched  pidgin/plugins/crazychat/QTUtilities.c
  patched  pidgin/plugins/crazychat/Utilities.c
  patched  pidgin/plugins/crazychat/camdata.c
  patched  pidgin/plugins/crazychat/camproc.c
  patched  pidgin/plugins/crazychat/cc_features.c
  patched  pidgin/plugins/crazychat/cc_gtk_gl.c
  patched  pidgin/plugins/crazychat/cc_network.c
  patched  pidgin/plugins/crazychat/cc_output.c
  patched  pidgin/plugins/crazychat/cc_pidgin_plugin.c
  patched  pidgin/plugins/crazychat/crazychat.c
  patched  pidgin/plugins/crazychat/dog_lids.c
  patched  pidgin/plugins/crazychat/doggy.c
  patched  pidgin/plugins/crazychat/draw.c
  patched  pidgin/plugins/crazychat/eye.c
  patched  pidgin/plugins/crazychat/eyes.c
  patched  pidgin/plugins/crazychat/face.c
  patched  pidgin/plugins/crazychat/filter.c
  patched  pidgin/plugins/crazychat/glm.c
  patched  pidgin/plugins/crazychat/main.c
  patched  pidgin/plugins/crazychat/models.c
  patched  pidgin/plugins/crazychat/sharky.c
  patched  pidgin/plugins/gestures/stroke-draw.c
  patched  pidgin/plugins/gevolution/eds-utils.c
  patched  pidgin/plugins/markerline.c
  patched  pidgin/plugins/musicmessaging/musicmessaging.c
  patched  pidgin/plugins/relnot.c
  patched  pidgin/plugins/sendbutton.c
  patched  pidgin/plugins/ticker/ticker.c
  patched  pidgin/plugins/vvconfig.c
  patched  pidgin/plugins/win32/winprefs/gtkappbar.c
  patched  pidgin/win32/gtkdocklet-win32.c

-------------- next part --------------
============================================================
--- libpurple/util.c	18e5f025a96c5d59873d96ce8a6d6d6a12603968
+++ libpurple/util.c	c6df0cbf873fdf6a665574175bb669bea13598e6
@@ -3949,27 +3949,27 @@ url_fetch_send_cb(gpointer data, gint so
 			/* This chunk of code was copied from proxy.c http_start_connect_tunneling()
 			 * This is really a temporary hack - we need a more complete proxy handling solution,
 			 * so I didn't think it was worthwhile to refactor for reuse
-			 */ 
+			 */
 			char *t1, *t2, *ntlm_type1;
 			char hostname[256];
 			int ret;
-	
+
 			ret = gethostname(hostname, sizeof(hostname));
 			hostname[sizeof(hostname) - 1] = '\0';
 			if (ret < 0 || hostname[0] == '\0') {
 				purple_debug_warning("util", "proxy - gethostname() failed -- is your hostname set?");
 				strcpy(hostname, "localhost");
 			}
-	
+
 			t1 = g_strdup_printf("%s:%s",
 				purple_proxy_info_get_username(gpi),
 				purple_proxy_info_get_password(gpi) ?
 					purple_proxy_info_get_password(gpi) : "");
 			t2 = purple_base64_encode((const guchar *)t1, strlen(t1));
 			g_free(t1);
-	
+
 			ntlm_type1 = purple_ntlm_gen_type1(hostname, "");
-	
+
 			g_string_append_printf(request_str,
 				"Proxy-Authorization: Basic %s\r\n"
 				"Proxy-Authorization: NTLM %s\r\n"
============================================================
--- libpurple/conversation.c	b31a7f4e0ad86707f3b173ab36e13e159dee1686
+++ libpurple/conversation.c	ee99c716bc1eee1b506e868d1ba00cbaf5ff511a
@@ -2298,7 +2298,7 @@ purple_conversations_init(void)
 						 purple_value_new(PURPLE_TYPE_SUBTYPE,
 										PURPLE_SUBTYPE_CONVERSATION),
 						 purple_value_new(PURPLE_TYPE_UINT));
-	
+
 	purple_signal_register(handle, "sent-attention",
 						 purple_marshal_VOID__POINTER_POINTER_POINTER_UINT,
 						 NULL, 4,
@@ -2308,7 +2308,7 @@ purple_conversations_init(void)
 						 purple_value_new(PURPLE_TYPE_SUBTYPE,
 										PURPLE_SUBTYPE_CONVERSATION),
 						 purple_value_new(PURPLE_TYPE_UINT));
-	
+
 	purple_signal_register(handle, "got-attention",
 						 purple_marshal_VOID__POINTER_POINTER_POINTER_UINT,
 						 NULL, 4,
@@ -2318,7 +2318,7 @@ purple_conversations_init(void)
 						 purple_value_new(PURPLE_TYPE_SUBTYPE,
 										PURPLE_SUBTYPE_CONVERSATION),
 						 purple_value_new(PURPLE_TYPE_UINT));
-	
+
 	purple_signal_register(handle, "sending-im-msg",
 						 purple_marshal_VOID__POINTER_POINTER_POINTER,
 						 NULL, 3,
============================================================
--- libpurple/prpl.c	826b1068c9419c9222f085f3d96c89c4bb4e7967
+++ libpurple/prpl.c	3fe7a8aa8d3ecfdc96d639823a86c3be483e2305
@@ -520,7 +520,7 @@ purple_prpl_got_attention(PurpleConnecti
 	PurpleAccount *account = purple_connection_get_account(gc);
 
 	got_attention(gc, -1, who, type_code);
-	conv = 
+	conv =
 		purple_find_conversation_with_account(PURPLE_CONV_TYPE_ANY, who, account);
 	if (conv)
 		purple_prpl_attention(conv, who, type_code, PURPLE_MESSAGE_RECV,
@@ -565,14 +565,14 @@ purple_prpl_get_media_caps(PurpleAccount
 	PurpleConnection *gc = NULL;
 	PurplePlugin *prpl = NULL;
 	PurplePluginProtocolInfo *prpl_info = NULL;
-	
+
 	if (account)
 		gc = purple_account_get_connection(account);
 	if (gc)
 		prpl = purple_connection_get_prpl(gc);
 	if (prpl)
 		prpl_info = PURPLE_PLUGIN_PROTOCOL_INFO(prpl);
-	
+
 	if (prpl_info && PURPLE_PROTOCOL_PLUGIN_HAS_FUNC(prpl_info,
 			get_media_caps)) {
 		return prpl_info->get_media_caps(account, who);
@@ -600,7 +600,7 @@ purple_prpl_got_media_caps(PurpleAccount
 		const gchar *bname = purple_buddy_get_name(buddy);
 		list = g_slist_delete_link(list, list);
 
-		
+
 		newcaps = purple_prpl_get_media_caps(account, bname);
 		purple_buddy_set_media_caps(buddy, newcaps);
 
============================================================
--- pidgin/gtkimhtml.c	ecfbac2a045e6c1821bd1725575c61b882a69fbd
+++ pidgin/gtkimhtml.c	403285dc48be2eeeee9799f17e53817d90048253
@@ -3829,7 +3829,7 @@ gtk_imhtml_custom_smiley_save(GtkWidget 
 gtk_imhtml_custom_smiley_save(GtkWidget *w, GtkIMHtmlImageSave *save)
 {
 	GtkIMHtmlImage *image = (GtkIMHtmlImage *)save->image;
-	
+
 	/* Create an add dialog */
 	PidginSmiley *editor = pidgin_smiley_edit(NULL, NULL);
 	pidgin_smiley_editor_set_shortcut(editor, image->filename);
============================================================
--- libpurple/protocols/jabber/jabber.c	b14ecdca4504e398676bed6f0e392c89e61f9251
+++ libpurple/protocols/jabber/jabber.c	f92a126795409ad9eaca9b2cec4c18194fca5af6
@@ -240,7 +240,7 @@ jabber_process_starttls(JabberStream *js
 		jabber_send_raw(js,
 				"<starttls xmlns='urn:ietf:params:xml:ns:xmpp-tls'/>", -1);
 		return TRUE;
-	} else { 
+	} else {
 		purple_debug_warning("jabber", "No libpurple TLS/SSL support found.");
 	}
 #endif
@@ -1717,8 +1717,8 @@ void jabber_close(PurpleConnection *gc)
 				(PurpleUtilFetchUrlData *) js->google_relay_requests->data;
 			purple_util_fetch_url_cancel(url_data);
 			g_free(url_data);
-			js->google_relay_requests = 
-				g_list_delete_link(js->google_relay_requests, 
+			js->google_relay_requests =
+				g_list_delete_link(js->google_relay_requests,
 					js->google_relay_requests);
 		}
 	}
@@ -2145,9 +2145,9 @@ const char* jabber_list_emblem(PurpleBud
 	if (jb) {
 		JabberBuddyResource *jbr = jabber_buddy_find_resource(jb, NULL);
 		if (jbr) {
-			const gchar *client_type = 
+			const gchar *client_type =
 				jabber_resource_get_identity_category_type(jbr, "client");
-		
+
 			if (client_type) {
 				if (strcmp(client_type, "phone") == 0) {
 					return "mobile";
@@ -2162,7 +2162,7 @@ const char* jabber_list_emblem(PurpleBud
 			}
 		}
 	}
-		
+
 	return NULL;
 }
 
@@ -2312,7 +2312,7 @@ void jabber_tooltip_text(PurpleBuddy *b,
 					purple_notify_user_info_add_pair(user_info, _("Mood"), moodplustext);
 					g_free(moodplustext);
 				} else
-					purple_notify_user_info_add_pair(user_info, _("Mood"), 
+					purple_notify_user_info_add_pair(user_info, _("Mood"),
 					    description ? _(description) : mood);
 			}
 			if (purple_presence_is_status_primitive_active(presence, PURPLE_STATUS_TUNE)) {
@@ -2376,7 +2376,7 @@ GList *jabber_status_types(PurpleAccount
 			NULL);
 	types = g_list_prepend(types, type);
 
-	
+
 	type = purple_status_type_new_with_attrs(PURPLE_STATUS_MOOD,
 	    "mood", NULL, TRUE, TRUE, TRUE,
 			PURPLE_MOOD_NAME, _("Mood Name"), purple_value_new(PURPLE_TYPE_STRING),
@@ -3138,7 +3138,7 @@ static PurpleCmdRet jabber_cmd_buzz(Purp
 	gchar *description;
 	PurpleBuddy *buddy;
 	const char *alias;
-	PurpleAttentionType *attn = 
+	PurpleAttentionType *attn =
 		purple_get_attention_type_from_code(conv->account, 0);
 
 	if (!args || !args[0]) {
@@ -3157,10 +3157,10 @@ static PurpleCmdRet jabber_cmd_buzz(Purp
 		alias = purple_buddy_get_contact_alias(buddy);
 	else
 		alias = who;
-	
-	description = 
+
+	description =
 		g_strdup_printf(purple_attention_type_get_outgoing_desc(attn), alias);
-	purple_conversation_write(conv, NULL, description, 
+	purple_conversation_write(conv, NULL, description,
 		PURPLE_MESSAGE_NOTIFY | PURPLE_MESSAGE_SYSTEM, time(NULL));
 	g_free(description);
 	return _jabber_send_buzz(js, who, error)  ? PURPLE_CMD_RET_OK : PURPLE_CMD_RET_FAILED;
@@ -3518,7 +3518,7 @@ gboolean jabber_can_receive_file(PurpleC
 		}
 
 		if (has_resources_without_caps) {
-			/* there is at least one resource which we don't have caps for, 
+			/* there is at least one resource which we don't have caps for,
 			 let's assume they can receive files... */
 			return TRUE;
 		} else {
============================================================
--- libpurple/protocols/jabber/jutil.c	46a9ecb1259d7c6faae8b27a3eff569172a67acd
+++ libpurple/protocols/jabber/jutil.c	fe3eae71afce9ed53e3094a6198727fc910941bd
@@ -731,7 +731,7 @@ char *
 }
 
 char *
-jabber_calculate_data_hash(gconstpointer data, size_t len, 
+jabber_calculate_data_hash(gconstpointer data, size_t len,
     const gchar *hash_algo)
 {
 	PurpleCipherContext *context;
============================================================
--- libpurple/protocols/msn/msn.c	12b73f249c6fb0d063179fa50e89c8b47c9599b2
+++ libpurple/protocols/msn/msn.c	d460366876352188a28848eb61f9caf76b642864
@@ -200,7 +200,7 @@ prp_success_cb(MsnCmdProc *cmdproc, MsnC
 {
 	const char *type, *friendlyname;
 	struct public_alias_closure *closure;
-	
+
 	g_return_if_fail(cmd->param_count >= 3);
 	type = cmd->params[1];
 	g_return_if_fail(!strcmp(type, "MFN"));
@@ -737,7 +737,7 @@ msn_show_blocked_text(PurplePluginAction
 		char *blocked_text;
 		blocked_text = g_strdup_printf(_("MSN servers are currently blocking the following regular expressions:<br/>%s"),
 		                               session->blocked_text);
-		
+
 		purple_notify_formatted(pc, title, title, NULL, blocked_text, NULL, NULL);
 		g_free(blocked_text);
 	}
@@ -760,7 +760,7 @@ msn_show_hotmail_inbox(PurplePluginActio
 		return;
 	}
 
-	/** apparently the correct value is 777, use 750 as a failsafe */ 
+	/** apparently the correct value is 777, use 750 as a failsafe */
 	if ((session->passport_info.mail_url == NULL)
 		|| (time (NULL) - session->passport_info.mail_timestamp >= 750)) {
 		MsnTransaction *trans;
@@ -1586,7 +1586,7 @@ msn_send_im(PurpleConnection *gc, const 
 		swboard != NULL) {
 		/*User online or have a swboard open because it's invisible
 		 * and sent us a message,then send Online Instant Message*/
- 
+
 		if (msglen + strlen(msgformat) + strlen(VERSION) > 1564)
 		{
 			g_free(msgformat);
@@ -1850,7 +1850,7 @@ cancel_auth_request(MsnAddReqData *data,
 {
 	/* Remove from local list */
 	purple_blist_remove_buddy(data->buddy);
-	
+
 	g_free(data);
 }
 
============================================================
--- libpurple/protocols/oscar/oscar.c	d26c2d6bcfe81c58b036b47d7e8ccd028b062125
+++ libpurple/protocols/oscar/oscar.c	6a87c0f2de22c9978eb823850e1c9e8b5d67b00f
@@ -1026,7 +1026,7 @@ int oscar_connect_to_bos(PurpleConnectio
 	conn->cookie = g_memdup(cookie, cookielen);
 
 	/*
-	 * Use TLS only if the server provided us with a tls_certname. The server might not specify a tls_certname even if we requested to use TLS, 
+	 * Use TLS only if the server provided us with a tls_certname. The server might not specify a tls_certname even if we requested to use TLS,
 	 * and that is something we should be prepared to.
 	 */
 	if (tls_certname)
@@ -1293,7 +1293,7 @@ purple_handle_redirect(OscarData *od, Fl
 				PURPLE_CONNECTION_ERROR_NO_SSL_SUPPORT,
 				_("You required encryption in your account settings, but one of the servers doesn't support it."));
 			return 0;
-		} 
+		}
 	}
 
 	/*
@@ -3215,7 +3215,7 @@ purple_odc_send_im(PeerConnection *conn,
 	g_string_free(data, TRUE);
 
 	purple_debug_info("oscar", "sending direct IM %s using charset %i", msg->str, charset);
-	
+
 	peer_odc_send_im(conn, msg->str, msg->len, charset,
 			imflags & PURPLE_MESSAGE_AUTO_RESP);
 	g_string_free(msg, TRUE);
@@ -3582,7 +3582,7 @@ oscar_set_info_and_status(PurpleAccount 
 		}
 
 		itmsurl = purple_status_get_attr_string(status, "itmsurl");
-		
+
 		aim_srv_setextrainfo(od, TRUE, oscar_get_extended_status(gc), TRUE, status_text, itmsurl);
 		g_free(status_text);
 	}
============================================================
--- libpurple/protocols/zephyr/ZAsyncLocate.c	5b39ab2f9da733c7141792c090229a610a4e4a34
+++ libpurple/protocols/zephyr/ZAsyncLocate.c	8bd283c5c76313e52c9f9dd151599517e3bf17bc
@@ -5,7 +5,7 @@
  *
  *	Copyright (c) 1990,1991 by the Massachusetts Institute of Technology.
  *	For copying and distribution information, see the file
- *	"mit-copyright.h". 
+ *	"mit-copyright.h".
  */
 
 #include "internal.h"
@@ -85,7 +85,7 @@ Code_t ZParseLocations(notice,zald,nlocs
     end = notice->z_message+notice->z_message_len;
 
     __locate_num = 0;
-	
+
     for (ptr=notice->z_message;ptr<end;ptr++)
       if (!*ptr)
 	__locate_num++;
============================================================
--- libpurple/protocols/zephyr/ZCkAuth.c	66c9e9ada4b366978e41efc6650ba481b21cd237
+++ libpurple/protocols/zephyr/ZCkAuth.c	94d9fe17ea7630b5a02fad0bc6618c60733e5157
@@ -5,7 +5,7 @@
  *
  *	Copyright (c) 1987,1991 by the Massachusetts Institute of Technology.
  *	For copying and distribution information, see the file
- *	"mit-copyright.h". 
+ *	"mit-copyright.h".
  */
 
 #include "internal.h"
@@ -21,7 +21,7 @@ Code_t ZCheckAuthentication(notice, from
 Code_t ZCheckAuthentication(notice, from)
     ZNotice_t *notice;
     struct sockaddr_in *from;
-{	
+{
 #ifdef ZEPHYR_USES_KERBEROS
     int result;
     ZChecksum_t our_checksum;
@@ -33,15 +33,15 @@ Code_t ZCheckAuthentication(notice, from
 
     if (!notice->z_auth)
 	return (ZAUTH_NO);
-	
-    if ((result = krb_get_cred(SERVER_SERVICE, SERVER_INSTANCE, 
+
+    if ((result = krb_get_cred(SERVER_SERVICE, SERVER_INSTANCE,
 			       __Zephyr_realm, &cred)) != 0)
 	return (ZAUTH_NO);
 
 #ifdef NOENCRYPTION
     our_checksum = 0;
 #else
-    our_checksum = des_quad_cksum(notice->z_packet, NULL, 
+    our_checksum = des_quad_cksum(notice->z_packet, NULL,
 				  notice->z_default_format+
 				  strlen(notice->z_default_format)+1-
 				  notice->z_packet, 0, (C_Block *)cred.session);
@@ -52,4 +52,4 @@ Code_t ZCheckAuthentication(notice, from
 #else
     return (notice->z_auth ? ZAUTH_YES : ZAUTH_NO);
 #endif
-} 
+}
============================================================
--- libpurple/protocols/zephyr/ZCkIfNot.c	02038451791894f8da259190d2a0ed8eaa2fbbdc
+++ libpurple/protocols/zephyr/ZCkIfNot.c	de3775c9ec17dc4dfdf5b7b793f6ad7d3861adeb
@@ -5,7 +5,7 @@
  *
  *	Copyright (c) 1987,1988 by the Massachusetts Institute of Technology.
  *	For copying and distribution information, see the file
- *	"mit-copyright.h". 
+ *	"mit-copyright.h".
  */
 
 #include "internal.h"
@@ -23,11 +23,11 @@ Code_t ZCheckIfNotice(notice, from, pred
 
     if ((retval = Z_ReadEnqueue()) != ZERR_NONE)
 	return (retval);
-	
+
     qptr = Z_GetFirstComplete();
-    
+
     while (qptr) {
-	if ((retval = ZParseNotice(qptr->packet, qptr->packet_len, 
+	if ((retval = ZParseNotice(qptr->packet, qptr->packet_len,
 				   &tmpnotice)) != ZERR_NONE)
 	    return (retval);
 	if ((*predicate)(&tmpnotice, args)) {
@@ -36,14 +36,14 @@ Code_t ZCheckIfNotice(notice, from, pred
 	    (void) memcpy(buffer, qptr->packet, qptr->packet_len);
 	    if (from)
 		*from = qptr->from;
-	    if ((retval = ZParseNotice(buffer, qptr->packet_len, 
+	    if ((retval = ZParseNotice(buffer, qptr->packet_len,
 				       notice)) != ZERR_NONE) {
 		free(buffer);
 		return (retval);
 	    }
 	    Z_RemQueue(qptr);
 	    return (ZERR_NONE);
-	} 
+	}
 	qptr = Z_GetNextComplete(qptr);
     }
 
============================================================
--- libpurple/protocols/zephyr/ZClosePort.c	44d5b781d24da7ac111d5f76b8e226bad2b3d914
+++ libpurple/protocols/zephyr/ZClosePort.c	58c649010f57ff61edcd3ca414c5edb7c527f8d5
@@ -5,7 +5,7 @@
  *
  *	Copyright (c) 1987 by the Massachusetts Institute of Technology.
  *	For copying and distribution information, see the file
- *	"mit-copyright.h". 
+ *	"mit-copyright.h".
  */
 
 #include "internal.h"
@@ -17,6 +17,6 @@ Code_t ZClosePort()
 
     __Zephyr_fd = -1;
     __Zephyr_open = 0;
-	
+
     return (ZERR_NONE);
 }
============================================================
--- libpurple/protocols/zephyr/ZCmpUID.c	c79f1a67791780959a3bf70e94aeb1f46050d86b
+++ libpurple/protocols/zephyr/ZCmpUID.c	6d1b43c2ef8fae9e49736b8ae254c01e086d939a
@@ -5,7 +5,7 @@
  *
  *	Copyright (c) 1987 by the Massachusetts Institute of Technology.
  *	For copying and distribution information, see the file
- *	"mit-copyright.h". 
+ *	"mit-copyright.h".
  */
 
 #include "internal.h"
============================================================
--- libpurple/protocols/zephyr/ZCmpUIDP.c	fdfc928a29871fb6220e188c861d8fb60662207e
+++ libpurple/protocols/zephyr/ZCmpUIDP.c	05edfe15ec47f5a197be539d35eb853cdda716d4
@@ -5,7 +5,7 @@
  *
  *	Copyright (c) 1987 by the Massachusetts Institute of Technology.
  *	For copying and distribution information, see the file
- *	"mit-copyright.h". 
+ *	"mit-copyright.h".
  */
 
 #include "internal.h"
============================================================
--- libpurple/protocols/zephyr/ZFlsLocs.c	9f37a0d6b7200843d5108ed89b2108041efd7d9f
+++ libpurple/protocols/zephyr/ZFlsLocs.c	c989c011357402cc013428396f3d2ab8f0984d57
@@ -5,7 +5,7 @@
  *
  *	Copyright (c) 1987 by the Massachusetts Institute of Technology.
  *	For copying and distribution information, see the file
- *	"mit-copyright.h". 
+ *	"mit-copyright.h".
  */
 
 #include "internal.h"
@@ -13,7 +13,7 @@ Code_t ZFlushLocations()
 Code_t ZFlushLocations()
 {
 	int i;
-	
+
 	if (!__locate_list)
 		return (ZERR_NONE);
 
@@ -22,7 +22,7 @@ Code_t ZFlushLocations()
 		free(__locate_list[i].time);
 		free(__locate_list[i].tty);
 	}
-	
+
 	free((char *)__locate_list);
 
 	__locate_list = 0;
============================================================
--- libpurple/protocols/zephyr/ZFlsSubs.c	9430fa4864846310c243b94279e20968c27b8800
+++ libpurple/protocols/zephyr/ZFlsSubs.c	b74ceae6ae36ce6e057ec84c733ad5c4fc7c2758
@@ -5,7 +5,7 @@
  *
  *	Copyright (c) 1987 by the Massachusetts Institute of Technology.
  *	For copying and distribution information, see the file
- *	"mit-copyright.h". 
+ *	"mit-copyright.h".
  */
 
 #include "internal.h"
@@ -13,7 +13,7 @@ Code_t ZFlushSubscriptions()
 Code_t ZFlushSubscriptions()
 {
 	register int i;
-	
+
 	if (!__subscriptions_list)
 		return (ZERR_NONE);
 
@@ -22,7 +22,7 @@ Code_t ZFlushSubscriptions()
 		free(__subscriptions_list[i].zsub_classinst);
 		free(__subscriptions_list[i].zsub_recipient);
 	}
-	
+
 	free((char *)__subscriptions_list);
 
 	__subscriptions_list = 0;
============================================================
--- libpurple/protocols/zephyr/ZFmtAuth.c	bd873f3a828d12499c84325451f1bf58777d2627
+++ libpurple/protocols/zephyr/ZFmtAuth.c	299891469ed7d6e288c977b81b24e9f54fc3f960
@@ -5,7 +5,7 @@
 
  *	Copyright (c) 1987,1988 by the Massachusetts Institute of Technology.
  *	For copying and distribution information, see the file
- *	"mit-copyright.h". 
+ *	"mit-copyright.h".
  */
 
 #include "internal.h"
============================================================
--- libpurple/protocols/zephyr/ZFmtList.c	275f4f898f2053a133e3f6583ec1e5de1211e1a5
+++ libpurple/protocols/zephyr/ZFmtList.c	7e6a71a7f7ebcfe0d1ad9a56d493cabe1cb02682
@@ -5,12 +5,12 @@
  *
  *	Copyright (c) 1987,1991 by the Massachusetts Institute of Technology.
  *	For copying and distribution information, see the file
- *	"mit-copyright.h". 
+ *	"mit-copyright.h".
  */
 
 #include "internal.h"
 
-Code_t ZFormatNoticeList(notice, list, nitems, buffer, ret_len, 
+Code_t ZFormatNoticeList(notice, list, nitems, buffer, ret_len,
 			 cert_routine)
     ZNotice_t *notice;
     register char **list;
============================================================
--- libpurple/protocols/zephyr/ZFmtNotice.c	8dbd46c80c0a36370399932505d0efa44f27c339
+++ libpurple/protocols/zephyr/ZFmtNotice.c	e3adcbdbf79981768d67da3573a7e8dcd6dc21d5
@@ -5,7 +5,7 @@
  *
  *	Copyright (c) 1987,1988 by the Massachusetts Institute of Technology.
  *	For copying and distribution information, see the file
- *	"mit-copyright.h". 
+ *	"mit-copyright.h".
  */
 
 #include "internal.h"
@@ -20,7 +20,7 @@ Code_t ZFormatNotice(notice, buffer, ret
     int hdrlen;
     Code_t retval;
 
-    if ((retval = Z_FormatHeader(notice, header, sizeof(header), &hdrlen, 
+    if ((retval = Z_FormatHeader(notice, header, sizeof(header), &hdrlen,
 				 cert_routine)) != ZERR_NONE)
 	return (retval);
 
============================================================
--- libpurple/protocols/zephyr/ZFmtRaw.c	e90901716602a45b91160ff5ca683e74efdc30ed
+++ libpurple/protocols/zephyr/ZFmtRaw.c	791933f570f771acfbe518c8e3cf0dd66e1449dd
@@ -5,7 +5,7 @@
  *
  *	Copyright (c) 1987 by the Massachusetts Institute of Technology.
  *	For copying and distribution information, see the file
- *	"mit-copyright.h". 
+ *	"mit-copyright.h".
  */
 
 #include "internal.h"
============================================================
--- libpurple/protocols/zephyr/ZFmtRawLst.c	f2e76caf5a3e4c07fd71ad10bd974baaad0073ff
+++ libpurple/protocols/zephyr/ZFmtRawLst.c	2001893fafbc97ece180799f765a5a7a4db721ef
@@ -5,7 +5,7 @@
  *
  *	Copyright (c) 1987 by the Massachusetts Institute of Technology.
  *	For copying and distribution information, see the file
- *	"mit-copyright.h". 
+ *	"mit-copyright.h".
  */
 
 #include "internal.h"
@@ -31,12 +31,12 @@ Code_t ZFormatRawNoticeList(notice, list
 	size += strlen(list[i])+1;
 
     *ret_len = hdrlen+size;
-    
+
     if (!(*buffer = (char *) malloc((unsigned) *ret_len)))
 	return (ENOMEM);
 
     (void) memcpy(*buffer, header, hdrlen);
-    
+
     ptr = *buffer+hdrlen;
 
     for (;nitems;nitems--, list++) {
============================================================
--- libpurple/protocols/zephyr/ZFmtSmRLst.c	d1ddd9cd0cecb0b91211f107ca3822f67bc9f6cc
+++ libpurple/protocols/zephyr/ZFmtSmRLst.c	5cfb5a182d46c7220e64b4d323102a7363793edc
@@ -5,7 +5,7 @@
  *
  *	Copyright (c) 1988 by the Massachusetts Institute of Technology.
  *	For copying and distribution information, see the file
- *	"mit-copyright.h". 
+ *	"mit-copyright.h".
  */
 
 #include "internal.h"
============================================================
--- libpurple/protocols/zephyr/ZFmtSmRaw.c	f4da144e81e68f0262211220e85528ec3a94d788
+++ libpurple/protocols/zephyr/ZFmtSmRaw.c	44a8c3ae43123cd76e840ede7e19a65a080417cf
@@ -5,7 +5,7 @@
  *
  *	Copyright (c) 1987 by the Massachusetts Institute of Technology.
  *	For copying and distribution information, see the file
- *	"mit-copyright.h". 
+ *	"mit-copyright.h".
  */
 
 #include "internal.h"
@@ -17,7 +17,7 @@ Code_t ZFormatSmallRawNotice(notice, buf
 {
     Code_t retval;
     int hdrlen;
-    
+
     if ((retval = Z_FormatRawHeader(notice, buffer, Z_MAXHEADERLEN,
 				    &hdrlen, NULL, NULL)) != ZERR_NONE)
 	return (retval);
============================================================
--- libpurple/protocols/zephyr/ZFreeNot.c	d6366308ed5072803db67fea0047ef4aadb4db6a
+++ libpurple/protocols/zephyr/ZFreeNot.c	cd51785eb3945fd04326880e1f5d26b7429878a4
@@ -5,7 +5,7 @@
  *
  *	Copyright (c) 1987 by the Massachusetts Institute of Technology.
  *	For copying and distribution information, see the file
- *	"mit-copyright.h". 
+ *	"mit-copyright.h".
  */
 
 #include "internal.h"
============================================================
--- libpurple/protocols/zephyr/ZGetLocs.c	560a8bfa671d220b3f0887cc82969cc928ca4fe9
+++ libpurple/protocols/zephyr/ZGetLocs.c	8fe8e280e1bbaadf4189406657a36fed79065d51
@@ -5,7 +5,7 @@
  *
  *	Copyright (c) 1987 by the Massachusetts Institute of Technology.
  *	For copying and distribution information, see the file
- *	"mit-copyright.h". 
+ *	"mit-copyright.h".
  */
 
 #include "internal.h"
@@ -18,13 +18,13 @@ Code_t ZGetLocations(ZLocations_t *locat
 Code_t ZGetLocations(ZLocations_t *location, int *numlocs)
 {
     int i;
-	
+
     if (!__locate_list)
 	return (ZERR_NOLOCATIONS);
 
     if (__locate_next == __locate_num)
 	return (ZERR_NOMORELOCS);
-	
+
     for (i=0;i<min(*numlocs, __locate_num-__locate_next);i++)
 	location[i] = __locate_list[i+__locate_next];
 
@@ -32,6 +32,6 @@ Code_t ZGetLocations(ZLocations_t *locat
 	*numlocs = __locate_num-__locate_next;
 
     __locate_next += *numlocs;
-	
+
     return (ZERR_NONE);
 }
============================================================
--- libpurple/protocols/zephyr/ZGetSender.c	db1ae846e34063ad783a058a75847cb12aad4a64
+++ libpurple/protocols/zephyr/ZGetSender.c	b4b9c7e01d3efb3f24f8ab58636079890628597f
@@ -5,7 +5,7 @@
  *
  *	Copyright (c) 1987, 1991 by the Massachusetts Institute of Technology.
  *	For copying and distribution information, see the file
- *	"mit-copyright.h". 
+ *	"mit-copyright.h".
  */
 
 #include "internal.h"
============================================================
--- libpurple/protocols/zephyr/ZGetSubs.c	58534b809a1e1b3e192b9953d758db94936614ce
+++ libpurple/protocols/zephyr/ZGetSubs.c	a87f46ef29c3edf93df3679198a4301cd81e1225
@@ -5,7 +5,7 @@
  *
  *	Copyright (c) 1987 by the Massachusetts Institute of Technology.
  *	For copying and distribution information, see the file
- *	"mit-copyright.h". 
+ *	"mit-copyright.h".
  */
 
 #include "internal.h"
@@ -18,13 +18,13 @@ Code_t ZGetSubscriptions(ZSubscription_t
 Code_t ZGetSubscriptions(ZSubscription_t *subscription, int *numsubs)
 {
     int i;
-	
+
     if (!__subscriptions_list)
 	return (ZERR_NOSUBSCRIPTIONS);
 
     if (__subscriptions_next == __subscriptions_num)
 	return (ZERR_NOMORESUBSCRIPTIONS);
-	
+
     for (i=0;i<min(*numsubs, __subscriptions_num-__subscriptions_next);i++)
 	subscription[i] = __subscriptions_list[i+__subscriptions_next];
 
@@ -32,6 +32,6 @@ Code_t ZGetSubscriptions(ZSubscription_t
 	*numsubs = __subscriptions_num-__subscriptions_next;
 
     __subscriptions_next += *numsubs;
-	
+
     return (ZERR_NONE);
 }
============================================================
--- libpurple/protocols/zephyr/ZGetWGPort.c	66abda15a85892f9594fe1c5995231ee90d93002
+++ libpurple/protocols/zephyr/ZGetWGPort.c	77f2b29c4b99a86fe16e1b3e7ed3bc81f99056b9
@@ -5,7 +5,7 @@
  *
  *	Copyright (c) 1987 by the Massachusetts Institute of Technology.
  *	For copying and distribution information, see the file
- *	"mit-copyright.h". 
+ *	"mit-copyright.h".
  */
 
 #include "internal.h"
@@ -18,7 +18,7 @@ int ZGetWGPort()
 #ifdef WIN32
     long int buffsize= 128;
     char tempdir[buffsize];
-#endif	
+#endif
     envptr = getenv("WGFILE");
     if (!envptr) {
 #ifdef WIN32
@@ -28,7 +28,7 @@ int ZGetWGPort()
 	(void) sprintf(name, "/tmp/wg.%d", getuid());
 #endif
 	envptr = name;
-    } 
+    }
     if (!(fp = fopen(envptr, "r")))
 	return (-1);
 
============================================================
--- libpurple/protocols/zephyr/ZIfNotice.c	2988d29a8521b2bbc0387b69e5a7a863f43b8cc8
+++ libpurple/protocols/zephyr/ZIfNotice.c	2c71a0b989881e30829523de988052b00c5c660c
@@ -5,7 +5,7 @@
  *
  *	Copyright (c) 1987,1988 by the Massachusetts Institute of Technology.
  *	For copying and distribution information, see the file
- *	"mit-copyright.h". 
+ *	"mit-copyright.h".
  */
 
 #include "internal.h"
@@ -23,12 +23,12 @@ Code_t ZIfNotice(notice, from, predicate
 
     if ((retval = Z_WaitForComplete()) != ZERR_NONE)
 	return (retval);
-	
+
     qptr = Z_GetFirstComplete();
-    
+
     for (;;) {
 	while (qptr) {
-	    if ((retval = ZParseNotice(qptr->packet, qptr->packet_len, 
+	    if ((retval = ZParseNotice(qptr->packet, qptr->packet_len,
 				       &tmpnotice)) != ZERR_NONE)
 		return (retval);
 	    if ((*predicate)(&tmpnotice, args)) {
@@ -37,7 +37,7 @@ Code_t ZIfNotice(notice, from, predicate
 		(void) memcpy(buffer, qptr->packet, qptr->packet_len);
 		if (from)
 		    *from = qptr->from;
-		if ((retval = ZParseNotice(buffer, qptr->packet_len, 
+		if ((retval = ZParseNotice(buffer, qptr->packet_len,
 					   notice)) != ZERR_NONE) {
 		    free(buffer);
 		    return (retval);
============================================================
--- libpurple/protocols/zephyr/ZInit.c	9b5d0e63d4e00c6221eed2d07714f3c33c89e2c3
+++ libpurple/protocols/zephyr/ZInit.c	4dca7a39649cb7584b1d1a5a2830edc1c981e9dd
@@ -5,7 +5,7 @@
  *
  *	Copyright (c) 1987, 1991 by the Massachusetts Institute of Technology.
  *	For copying and distribution information, see the file
- *	"mit-copyright.h". 
+ *	"mit-copyright.h".
  */
 
 #ifdef ZEPHYR_USES_KERBEROS
@@ -49,7 +49,7 @@ Code_t ZInitialize()
 #endif
 
     initialize_zeph_error_table();
-    
+
     (void) memset((char *)&__HM_addr, 0, sizeof(__HM_addr));
 
     __HM_addr.sin_family = AF_INET;
@@ -70,7 +70,7 @@ Code_t ZInitialize()
     /* Initialize the input queue */
     __Q_Tail = NULL;
     __Q_Head = NULL;
-    
+
     /* if the application is a server, there might not be a zhm.  The
        code will fall back to something which might not be "right",
        but this is is ok, since none of the servers call krb_rd_req. */
============================================================
--- libpurple/protocols/zephyr/ZLocations.c	32c78ee1999c54b1fa069ce0164766e1b81607de
+++ libpurple/protocols/zephyr/ZLocations.c	bc362354eae9017bf2ca334797c409570990f298
@@ -6,7 +6,7 @@
  *
  *	Copyright (c) 1987,1988,1991 by the Massachusetts Institute of Technology.
  *	For copying and distribution information, see the file
- *	"mit-copyright.h". 
+ *	"mit-copyright.h".
  */
 
 #include "internal.h"
@@ -21,13 +21,13 @@ Code_t ZSetLocation(exposure)
 Code_t ZSetLocation(exposure)
     char *exposure;
 {
-    return (Z_SendLocation(LOGIN_CLASS, exposure, ZAUTH, 
+    return (Z_SendLocation(LOGIN_CLASS, exposure, ZAUTH,
 			   "$sender logged in to $1 on $3 at $2"));
 }
 
 Code_t ZUnsetLocation()
 {
-    return (Z_SendLocation(LOGIN_CLASS, LOGIN_USER_LOGOUT, ZNOAUTH, 
+    return (Z_SendLocation(LOGIN_CLASS, LOGIN_USER_LOGOUT, ZNOAUTH,
 			   "$sender logged out of $1 on $3 at $2"));
 }
 
@@ -137,8 +137,8 @@ Code_t Z_SendLocation(class, opcode, aut
 	}
 	ZFreeNotice(&retnotice);
 	return (ZERR_SERVNAK);
-    } 
-	
+    }
+
     if (retnotice.z_kind != SERVACK) {
 	ZFreeNotice(&retnotice);
 	return (ZERR_INTERNAL);
@@ -156,6 +156,6 @@ Code_t Z_SendLocation(class, opcode, aut
     }
 
     ZFreeNotice(&retnotice);
-	
+
     return (ZERR_NONE);
 }
============================================================
--- libpurple/protocols/zephyr/ZMakeAscii.c	7f765db19c08819c12376dc961d7e2343fbf654b
+++ libpurple/protocols/zephyr/ZMakeAscii.c	20b8286f679cd042abc32710b59435964bac906d
@@ -5,7 +5,7 @@
  *
  *	Copyright (c) 1987 by the Massachusetts Institute of Technology.
  *	For copying and distribution information, see the file
- *	"mit-copyright.h". 
+ *	"mit-copyright.h".
  */
 
 #include "internal.h"
@@ -33,7 +33,7 @@ Code_t ZMakeAscii(ptr, len, field, num)
 	    *ptr++ = '0';
 	    *ptr++ = 'x';
 	    len -= 2;
-	} 
+	}
 	if (len < 3)
 	    return ZERR_FIELDLEN;
 	*ptr++ = itox_chars[(int) (field[i] >> 4)];
============================================================
--- libpurple/protocols/zephyr/ZMkAuth.c	da749c9d6993c3626f44ac3ee757fa1614d428e0
+++ libpurple/protocols/zephyr/ZMkAuth.c	ca47d96787905d4b7c82d6ade8744750de71c838
@@ -5,7 +5,7 @@
  *
  *	Copyright (c) 1987 by the Massachusetts Institute of Technology.
  *	For copying and distribution information, see the file
- *	"mit-copyright.h". 
+ *	"mit-copyright.h".
  */
 
 #include "internal.h"
@@ -50,7 +50,7 @@ Code_t ZMakeAuthentication(notice, buffe
 
     now = time(0);
     if (last_authent_time == 0 || (now - last_authent_time > 120)) {
-	result = krb_mk_req(&authent, SERVER_SERVICE, 
+	result = krb_mk_req(&authent, SERVER_SERVICE,
 			    SERVER_INSTANCE, __Zephyr_realm, 0);
 	if (result != MK_AP_OK) {
 	    last_authent_time = 0;
@@ -68,9 +68,9 @@ Code_t ZMakeAuthentication(notice, buffe
     /* zero length authent is an error, so malloc(0) is not a problem */
     if (!notice->z_ascii_authent)
 	return (ENOMEM);
-    if ((result = ZMakeAscii(notice->z_ascii_authent, 
-			     authent.length*3, 
-			     authent.dat, 
+    if ((result = ZMakeAscii(notice->z_ascii_authent,
+			     authent.length*3,
+			     authent.dat,
 			     authent.length)) != ZERR_NONE) {
 	free(notice->z_ascii_authent);
 	return (result);
@@ -83,7 +83,7 @@ Code_t ZMakeAuthentication(notice, buffe
 	return(result);
 
     /* Compute a checksum over the header and message. */
-    if ((result = krb_get_cred(SERVER_SERVICE, SERVER_INSTANCE, 
+    if ((result = krb_get_cred(SERVER_SERVICE, SERVER_INSTANCE,
 			      __Zephyr_realm, &cred)) != 0)
 	return result;
     checksum = des_quad_cksum(buffer, NULL, cstart - buffer, 0, (C_Block *)cred.session);
============================================================
--- libpurple/protocols/zephyr/ZNewLocU.c	458870939ba06c1dd9a570aeb7e11ab6989d43cd
+++ libpurple/protocols/zephyr/ZNewLocU.c	a2b2632b373d9d30a8d467f94c90720eba00055d
@@ -5,7 +5,7 @@
  *
  *	Copyright (c) 1987,1988,1991 by the Massachusetts Institute of Technology.
  *	For copying and distribution information, see the file
- *	"mit-copyright.h". 
+ *	"mit-copyright.h".
  */
 
 #include "internal.h"
============================================================
--- libpurple/protocols/zephyr/ZOpenPort.c	5bbbf648df3bf23922a62a37e4979e4669169f46
+++ libpurple/protocols/zephyr/ZOpenPort.c	48ef742f891c7e6c40c461f1aba062ba441029e3
@@ -5,7 +5,7 @@
  *
  *	Copyright (c) 1987 by the Massachusetts Institute of Technology.
  *	For copying and distribution information, see the file
- *	"mit-copyright.h". 
+ *	"mit-copyright.h".
  */
 
 #include "internal.h"
@@ -20,7 +20,7 @@ Code_t ZOpenPort(port)
 {
     struct sockaddr_in bindin;
     socklen_t len;
-    
+
     (void) ZClosePort();
 
     if ((__Zephyr_fd = socket(AF_INET, SOCK_DGRAM, 0)) < 0) {
@@ -32,7 +32,7 @@ Code_t ZOpenPort(port)
     {
       int on = 1;
 
-      setsockopt(__Zephyr_fd, SOL_SOCKET, SO_BSDCOMPAT, (char *)&on, 
+      setsockopt(__Zephyr_fd, SOL_SOCKET, SO_BSDCOMPAT, (char *)&on,
 		 sizeof(on));
     }
 #endif
@@ -58,7 +58,7 @@ Code_t ZOpenPort(port)
 	if (getsockname(__Zephyr_fd, (struct sockaddr *)&bindin, &len))
 	    return (errno);
     }
-    
+
     __Zephyr_port = bindin.sin_port;
     __Zephyr_open = 1;
 
============================================================
--- libpurple/protocols/zephyr/ZParseNot.c	b1829dccbc9169e935d2882f74a558153bb8885d
+++ libpurple/protocols/zephyr/ZParseNot.c	e97ae46b9d30d9575104b4904c8ba51f120b46ab
@@ -5,7 +5,7 @@
  *
  *	Copyright (c) 1987,1991 by the Massachusetts Institute of Technology.
  *	For copying and distribution information, see the file
- *	"mit-copyright.h". 
+ *	"mit-copyright.h".
  */
 
 #include "internal.h"
@@ -84,12 +84,12 @@ Code_t ZParseNotice(buffer, len, notice)
 #endif
 
     (void) memset((char *)notice, 0, sizeof(ZNotice_t));
-	
+
     ptr = buffer;
     end = buffer+len;
 
     notice->z_packet = buffer;
-    
+
     notice->z_version = ptr;
     if (strncmp(ptr, ZVERSIONHDR, sizeof(ZVERSIONHDR) - 1))
 	return (ZERR_VERS);
@@ -141,7 +141,7 @@ Code_t ZParseNotice(buffer, len, notice)
     }
     else
 	BAD_PACKET;
-	
+
     if (numfields) {
 	if (ZReadAscii(ptr, end-ptr, (unsigned char *)&notice->z_uid,
 		       sizeof(ZUnique_Id_t)) == ZERR_BADFIELD)
@@ -153,7 +153,7 @@ Code_t ZParseNotice(buffer, len, notice)
     }
     else
 	BAD_PACKET;
-	
+
     if (numfields) {
 	if (ZReadAscii16(ptr, end-ptr, &notice->z_port) == ZERR_BADFIELD)
 	    BAD_PACKET;
@@ -174,7 +174,7 @@ Code_t ZParseNotice(buffer, len, notice)
     else
 	BAD_PACKET;
     notice->z_checked_auth = ZAUTH_UNSET;
-	
+
     if (numfields) {
 	if (ZReadAscii32(ptr, end-ptr, &temp) == ZERR_BADFIELD)
 	    BAD_PACKET;
@@ -200,7 +200,7 @@ Code_t ZParseNotice(buffer, len, notice)
     }
     else
 	notice->z_class = "";
-	
+
     if (numfields) {
 	notice->z_class_inst = ptr;
 	numfields--;
@@ -240,7 +240,7 @@ Code_t ZParseNotice(buffer, len, notice)
     }
     else
 	notice->z_default_format = "";
-	
+
 /*XXX*/
     if (ZReadAscii32(ptr, end-ptr, &temp) == ZERR_BADFIELD)
 	BAD_PACKET;
@@ -273,10 +273,10 @@ Code_t ZParseNotice(buffer, len, notice)
 	next_field (ptr);
     }
     notice->z_num_other_fields = i;
-    
+
     for (i=0;i<numfields;i++)
 	next_field (ptr);
-	
+
     notice->z_message = (void *)ptr;
     notice->z_message_len = len-(ptr-buffer);
 
============================================================
--- libpurple/protocols/zephyr/ZPeekIfNot.c	9735d4d32c2419aa642bd51e12ab0f80cfa58eb0
+++ libpurple/protocols/zephyr/ZPeekIfNot.c	888a536801ace7854e97d263e9fa55db51d10d5f
@@ -5,7 +5,7 @@
  *
  *	Copyright (c) 1987,1988 by the Massachusetts Institute of Technology.
  *	For copying and distribution information, see the file
- *	"mit-copyright.h". 
+ *	"mit-copyright.h".
  */
 
 #include "internal.h"
@@ -24,11 +24,11 @@ Code_t ZPeekIfNotice(notice, from, predi
 
     if ((retval = Z_WaitForComplete()) != ZERR_NONE)
 	return (retval);
-    
+
     for (;;) {
 	qptr = Z_GetFirstComplete();
 	while (qptr) {
-	    if ((retval = ZParseNotice(qptr->packet, qptr->packet_len, 
+	    if ((retval = ZParseNotice(qptr->packet, qptr->packet_len,
 				       &tmpnotice)) != ZERR_NONE)
 		return (retval);
 	    if ((*predicate)(&tmpnotice, args)) {
@@ -37,7 +37,7 @@ Code_t ZPeekIfNotice(notice, from, predi
 		(void) memcpy(buffer, qptr->packet, qptr->packet_len);
 		if (from)
 		    *from = qptr->from;
-		if ((retval = ZParseNotice(buffer, qptr->packet_len, 
+		if ((retval = ZParseNotice(buffer, qptr->packet_len,
 					   notice)) != ZERR_NONE) {
 		    free(buffer);
 		    return (retval);
============================================================
--- libpurple/protocols/zephyr/ZPeekNot.c	f80b08d2be18a5f2019d011bc0630e8eeed9cfd5
+++ libpurple/protocols/zephyr/ZPeekNot.c	005819a8d94b3c8be7276ef525e6d3694d628eb2
@@ -5,7 +5,7 @@
  *
  *	Copyright (c) 1987 by the Massachusetts Institute of Technology.
  *	For copying and distribution information, see the file
- *	"mit-copyright.h". 
+ *	"mit-copyright.h".
  */
 
 #include "internal.h"
@@ -17,7 +17,7 @@ Code_t ZPeekNotice(notice, from)
     char *buffer;
     int len;
     Code_t retval;
-	
+
     if ((retval = ZPeekPacket(&buffer, &len, from)) != ZERR_NONE)
 	return (retval);
 
============================================================
--- libpurple/protocols/zephyr/ZPeekPkt.c	1afb04410a3d1bd1a3772a8f3ba208fde16654ca
+++ libpurple/protocols/zephyr/ZPeekPkt.c	1aa3caf3be850a52aacba707a0949c4e4c788581
@@ -5,7 +5,7 @@
  *
  *	Copyright (c) 1987 by the Massachusetts Institute of Technology.
  *	For copying and distribution information, see the file
- *	"mit-copyright.h". 
+ *	"mit-copyright.h".
  */
 
 #include "internal.h"
@@ -17,14 +17,14 @@ Code_t ZPeekPacket(buffer, ret_len, from
 {
     Code_t retval;
     struct _Z_InputQ *nextq;
-    
+
     if ((retval = Z_WaitForComplete()) != ZERR_NONE)
 	return (retval);
 
     nextq =Z_GetFirstComplete();
 
     *ret_len = nextq->packet_len;
-    
+
     if (!(*buffer = (char *) malloc((unsigned) *ret_len)))
 	return (ENOMEM);
 
@@ -32,6 +32,6 @@ Code_t ZPeekPacket(buffer, ret_len, from
 
     if (from)
 	*from = nextq->from;
-	
+
     return (ZERR_NONE);
 }
============================================================
--- libpurple/protocols/zephyr/ZPending.c	ffebc7c864a0d485ebf608cbde0c55efa2856ddc
+++ libpurple/protocols/zephyr/ZPending.c	f101914036dbc9eb931ecbace02dd5e00ed90711
@@ -5,7 +5,7 @@
  *
  *	Copyright (c) 1987 by the Massachusetts Institute of Technology.
  *	For copying and distribution information, see the file
- *	"mit-copyright.h". 
+ *	"mit-copyright.h".
  */
 
 #include "internal.h"
@@ -13,16 +13,16 @@ int ZPending()
 int ZPending()
 {
 	int retval;
-	
+
 	if (ZGetFD() < 0) {
 		errno = ZERR_NOPORT;
 		return (-1);
 	}
-	
+
 	if ((retval = Z_ReadEnqueue()) != ZERR_NONE) {
 		errno = retval;
 		return (-1);
-	} 
-	
+	}
+
 	return(ZQLength());
 }
============================================================
--- libpurple/protocols/zephyr/ZReadAscii.c	b9a7bd4e43ab025e62d20e538faf12337c91acc6
+++ libpurple/protocols/zephyr/ZReadAscii.c	ed24e6eeaf90544035181647622827a4d2490f93
@@ -5,7 +5,7 @@
  *
  *	Copyright (c) 1987, 1990 by the Massachusetts Institute of Technology.
  *	For copying and distribution information, see the file
- *	"mit-copyright.h". 
+ *	"mit-copyright.h".
  */
 
 #include "internal.h"
@@ -28,13 +28,13 @@ Code_t ZReadAscii(ptr, len, field, num)
 	    ptr++;
 	    if (--len < 0)
 		return ZERR_BADFIELD;
-	} 
+	}
 	if (ptr[0] == '0' && ptr[1] == 'x') {
 	    ptr += 2;
 	    len -= 2;
 	    if (len < 0)
 		return ZERR_BADFIELD;
-	} 
+	}
 	c1 = Z_cnvt_xtoi(ptr[0]);
 	if (c1 < 0)
 		return ZERR_BADFIELD;
============================================================
--- libpurple/protocols/zephyr/ZRecvNot.c	5c0b066b68919388efe1c81b98fcdaf68f3f1626
+++ libpurple/protocols/zephyr/ZRecvNot.c	109878015483698f1a3367fbd879ac7d75bf2a01
@@ -5,7 +5,7 @@
  *
  *	Copyright (c) 1987,1988 by the Massachusetts Institute of Technology.
  *	For copying and distribution information, see the file
- *	"mit-copyright.h". 
+ *	"mit-copyright.h".
  */
 
 #include "internal.h"
@@ -28,18 +28,18 @@ Code_t ZReceiveNotice(notice, from)
 	    return (ENOMEM);
 
     len = nextq->packet_len;
-    
+
     if (!(buffer = (char *) malloc((unsigned) len)))
 	return (ENOMEM);
 
     if (from)
 	*from = nextq->from;
-    
+
     (void) memcpy(buffer, nextq->packet, len);
 
     auth = nextq->auth;
     Z_RemQueue(nextq);
-    
+
     if ((retval = ZParseNotice(buffer, len, notice)) != ZERR_NONE)
 	return (retval);
     notice->z_checked_auth = auth;
============================================================
--- libpurple/protocols/zephyr/ZRecvPkt.c	81d0f9ff672fd8c46973653993428366feda6425
+++ libpurple/protocols/zephyr/ZRecvPkt.c	18a652e7bf1b5c49b303276847676ad17f5ca20d
@@ -5,7 +5,7 @@
  *
  *	Copyright (c) 1987,1988 by the Massachusetts Institute of Technology.
  *	For copying and distribution information, see the file
- *	"mit-copyright.h". 
+ *	"mit-copyright.h".
  */
 
 #include "internal.h"
@@ -17,7 +17,7 @@ Code_t ZReceivePacket(buffer, ret_len, f
 {
     Code_t retval;
     struct _Z_InputQ *nextq;
-    
+
     if ((retval = Z_WaitForComplete()) != ZERR_NONE)
 	return (retval);
 
@@ -26,12 +26,12 @@ Code_t ZReceivePacket(buffer, ret_len, f
     *ret_len = nextq->packet_len;
     if (*ret_len > Z_MAXPKTLEN)
 	return (ZERR_PKTLEN);
-    
+
     (void) memcpy(buffer, nextq->packet, *ret_len);
 
     if (from)
 	*from = nextq->from;
-	
+
     Z_RemQueue(nextq);
 
     return (ZERR_NONE);
============================================================
--- libpurple/protocols/zephyr/ZRetSubs.c	8d0c445a8bede635b1dda34347fe9e2637201c21
+++ libpurple/protocols/zephyr/ZRetSubs.c	17f7abfea3676c134e63c8e69ec0f5c9e0be882f
@@ -6,7 +6,7 @@
  *
  *	Copyright (c) 1987,1988,1991 by the Massachusetts Institute of Technology.
  *	For copying and distribution information, see the file
- *	"mit-copyright.h". 
+ *	"mit-copyright.h".
  */
 
 #include "internal.h"
@@ -25,7 +25,7 @@ Code_t ZRetrieveSubscriptions(port,nsubs
 	int retval;
 	ZNotice_t notice;
 	char asciiport[50];
-	
+
 	if (!port)			/* use default port */
 	    port = __Zephyr_port;
 
@@ -102,7 +102,7 @@ static Code_t Z_RetSubs(notice, nsubs, a
 		if (retnotice.z_kind == SERVNAK) {
 			ZFreeNotice(&retnotice);
 			return (ZERR_SERVNAK);
-		}	
+		}
 		/* non-matching protocol version numbers means the
 		   server is probably an older version--must punt */
 		if (strcmp(notice->z_version,retnotice.z_version)) {
@@ -114,7 +114,7 @@ static Code_t Z_RetSubs(notice, nsubs, a
 			ZFreeNotice(&retnotice);
 			gimmeack = 1;
 			continue;
-		} 
+		}
 
 		if (retnotice.z_kind != ACKED) {
 			ZFreeNotice(&retnotice);
============================================================
--- libpurple/protocols/zephyr/ZSendList.c	c95bd1e3e3a12df8512201b3d266f95b2f64a797
+++ libpurple/protocols/zephyr/ZSendList.c	14776165b765be7399dbb3d1366d805b1f115a9e
@@ -5,7 +5,7 @@
  *
  *	Copyright (c) 1987 by the Massachusetts Institute of Technology.
  *	For copying and distribution information, see the file
- *	"mit-copyright.h". 
+ *	"mit-copyright.h".
  */
 
 #include "internal.h"
@@ -31,13 +31,13 @@ Code_t ZSrvSendList(notice, list, nitems
     char *buffer;
     int len;
 
-    if ((retval = ZFormatNoticeList(notice, list, nitems, &buffer, 
+    if ((retval = ZFormatNoticeList(notice, list, nitems, &buffer,
 				    &len, cert_routine)) != ZERR_NONE)
 	return (retval);
 
     if ((retval = ZParseNotice(buffer, len, &newnotice)) != ZERR_NONE)
 	return (retval);
-    
+
     retval = Z_SendFragmentedNotice(&newnotice, len, cert_routine,
 				    send_routine);
 
============================================================
--- libpurple/protocols/zephyr/ZSendNot.c	b58f06e928ef654263d59db9889a020059f39618
+++ libpurple/protocols/zephyr/ZSendNot.c	70a6721e7059c6078e7c3f0b12660043307a2191
@@ -5,7 +5,7 @@
  *
  *	Copyright (c) 1987 by the Massachusetts Institute of Technology.
  *	For copying and distribution information, see the file
- *	"mit-copyright.h". 
+ *	"mit-copyright.h".
  */
 
 #include "internal.h"
@@ -21,19 +21,19 @@ Code_t ZSrvSendNotice(notice, cert_routi
     ZNotice_t *notice;
     Z_AuthProc cert_routine;
     Code_t (*send_routine)();
-{    
+{
     Code_t retval;
     ZNotice_t newnotice;
     char *buffer;
     int len;
 
-    if ((retval = ZFormatNotice(notice, &buffer, &len, 
+    if ((retval = ZFormatNotice(notice, &buffer, &len,
 				cert_routine)) != ZERR_NONE)
 	return (retval);
 
     if ((retval = ZParseNotice(buffer, len, &newnotice)) != ZERR_NONE)
 	return (retval);
-    
+
     retval = Z_SendFragmentedNotice(&newnotice, len, cert_routine,
 				    send_routine);
 
============================================================
--- libpurple/protocols/zephyr/ZSendPkt.c	3eda8eca082ea7cc64ff9575ed69de4a8f882760
+++ libpurple/protocols/zephyr/ZSendPkt.c	a14f75e77e03b95f4c64ae655cc23780b95bc39a
@@ -5,7 +5,7 @@
  *
  *	Copyright (c) 1987,1991 by the Massachusetts Institute of Technology.
  *	For copying and distribution information, see the file
- *	"mit-copyright.h". 
+ *	"mit-copyright.h".
  */
 
 #include "internal.h"
@@ -25,19 +25,19 @@ Code_t ZSendPacket(packet, len, waitfora
     Code_t retval;
     struct sockaddr_in dest;
     ZNotice_t notice, acknotice;
-	
+
     if (!packet || len < 0)
 	return (ZERR_ILLVAL);
 
     if (len > Z_MAXPKTLEN)
 	return (ZERR_PKTLEN);
-    
+
     if (ZGetFD() < 0)
 	if ((retval = ZOpenPort((unsigned short *)0)) != ZERR_NONE)
 	    return (retval);
 
     dest = ZGetDestAddr();
-	
+
     if (sendto(ZGetFD(), packet, len, 0, (struct sockaddr *)&dest,
 	       sizeof(dest)) < 0)
 	return (errno);
@@ -47,7 +47,7 @@ Code_t ZSendPacket(packet, len, waitfora
 
     if ((retval = ZParseNotice(packet, len, &notice)) != ZERR_NONE)
 	return (retval);
-    
+
     retval = Z_WaitForNotice (&acknotice, wait_for_hmack, &notice.z_uid,
 			      HM_TIMEOUT);
     if (retval == ETIMEDOUT)
============================================================
--- libpurple/protocols/zephyr/ZSendRLst.c	b23bd4a156b6a39ec30330bf7cfdb17af4e4bcde
+++ libpurple/protocols/zephyr/ZSendRLst.c	236d8f6f33762be29c6c9d695c08d68971403bb1
@@ -5,7 +5,7 @@
  *
  *	Copyright (c) 1988 by the Massachusetts Institute of Technology.
  *	For copying and distribution information, see the file
- *	"mit-copyright.h". 
+ *	"mit-copyright.h".
  */
 
 #include "internal.h"
@@ -30,13 +30,13 @@ Code_t ZSrvSendRawList(notice, list, nit
     char *buffer;
     int len;
 
-    if ((retval = ZFormatRawNoticeList(notice, list, nitems, &buffer, 
+    if ((retval = ZFormatRawNoticeList(notice, list, nitems, &buffer,
 				       &len)) != ZERR_NONE)
 	return (retval);
 
     if ((retval = ZParseNotice(buffer, len, &newnotice)) != ZERR_NONE)
 	return (retval);
-    
+
     retval = Z_SendFragmentedNotice(&newnotice, len, NULL, send_routine);
 
     free(buffer);
============================================================
--- libpurple/protocols/zephyr/ZSendRaw.c	92aa3905140ee99480b8253473519bddcbdaf125
+++ libpurple/protocols/zephyr/ZSendRaw.c	16fdb7bc8e7560b1245895ab791f5b20ce105124
@@ -5,7 +5,7 @@
  *
  *	Copyright (c) 1987 by the Massachusetts Institute of Technology.
  *	For copying and distribution information, see the file
- *	"mit-copyright.h". 
+ *	"mit-copyright.h".
  */
 
 #include "internal.h"
@@ -25,7 +25,7 @@ Code_t ZSendRawNotice(notice)
 
     if ((retval = ZParseNotice(buffer, len, &newnotice)) != ZERR_NONE)
 	return (retval);
-    
+
     retval = Z_SendFragmentedNotice(&newnotice, len, NULL, Z_XmitFragment);
 
     free(buffer);
============================================================
--- libpurple/protocols/zephyr/ZSetDest.c	e1fcd020bb5a204dd478288b2835a8280e5c3585
+++ libpurple/protocols/zephyr/ZSetDest.c	5c9b1116227046c69be02e08b13d1c5851c3b253
@@ -5,7 +5,7 @@
  *
  *	Copyright (c) 1987 by the Massachusetts Institute of Technology.
  *	For copying and distribution information, see the file
- *	"mit-copyright.h". 
+ *	"mit-copyright.h".
  */
 
 #include "internal.h"
@@ -16,6 +16,6 @@ Code_t ZSetDestAddr(addr)
 	__HM_addr = *addr;
 
 	__HM_set = 1;
-	
+
 	return (ZERR_NONE);
 }
============================================================
--- libpurple/protocols/zephyr/ZSetFD.c	3e122f33cded13464812dddb7625d46d87938795
+++ libpurple/protocols/zephyr/ZSetFD.c	024ab8ac4284729aa1c5bcdf08d72cd6d84c4f8c
@@ -5,7 +5,7 @@
  *
  *	Copyright (c) 1987 by the Massachusetts Institute of Technology.
  *	For copying and distribution information, see the file
- *	"mit-copyright.h". 
+ *	"mit-copyright.h".
  */
 
 #include "internal.h"
@@ -17,6 +17,6 @@ Code_t ZSetFD(fd)
 
 	__Zephyr_fd = fd;
 	__Zephyr_open = 0;
-	
+
 	return (ZERR_NONE);
 }
============================================================
--- libpurple/protocols/zephyr/ZSetSrv.c	4a4f0117b1315dcf057c9c526047ca5a385affe3
+++ libpurple/protocols/zephyr/ZSetSrv.c	a802ef910c91ce41fa016da3e8dfc81fa203c93d
@@ -5,7 +5,7 @@
  *
  *	Copyright (c) 1987 by the Massachusetts Institute of Technology.
  *	For copying and distribution information, see the file
- *	"mit-copyright.h". 
+ *	"mit-copyright.h".
  */
 
 #include "internal.h"
@@ -14,6 +14,6 @@ Code_t ZSetServerState(state)
 	int	state;
 {
 	__Zephyr_server = state;
-	
+
 	return (ZERR_NONE);
 }
============================================================
--- libpurple/protocols/zephyr/ZSubs.c	ba2251782120fbbded1e4ce72c465e4d015887f9
+++ libpurple/protocols/zephyr/ZSubs.c	f58c992bcced3d901f74de6f0c798b404d1f6a16
@@ -6,7 +6,7 @@
  *
  *	Copyright (c) 1987,1988 by the Massachusetts Institute of Technology.
  *	For copying and distribution information, see the file
- *	"mit-copyright.h". 
+ *	"mit-copyright.h".
  */
 
 #include "internal.h"
@@ -76,7 +76,7 @@ Z_Subscriptions(sublist, nitems, port, o
 
     /* nitems = 0 means cancel all subscriptions; still need to allocate a */
     /* array for one item so we can cancel, however. */
-  
+
     list = (char **)malloc((unsigned)((nitems==0)?1:nitems)*3*sizeof(char *));
     if (!list)
         return (ENOMEM);
@@ -173,10 +173,10 @@ int authit;
     retval = ZSendList(notice, lyst, num*3, ZAUTH);
     if (retval != ZERR_NONE && !authit)
 	retval = ZSendList(notice, lyst, num*3, ZNOAUTH);
-	
+
     if (retval != ZERR_NONE)
 	return (retval);
-    if ((retval = ZIfNotice(&retnotice, (struct sockaddr_in *)0, 
+    if ((retval = ZIfNotice(&retnotice, (struct sockaddr_in *)0,
 				ZCompareUIDPred, (char *)&notice->z_uid)) !=
 	ZERR_NONE)
 	return (retval);
============================================================
--- libpurple/protocols/zephyr/ZVariables.c	447d1f74531923c97fd33db487e5367b1af74031
+++ libpurple/protocols/zephyr/ZVariables.c	a3cdf29cb69c23b2b54fa5e7f3b77ce7667d489f
@@ -6,7 +6,7 @@
  *
  *	Copyright (c) 1987 by the Massachusetts Institute of Technology.
  *	For copying and distribution information, see the file
- *	"mit-copyright.h". 
+ *	"mit-copyright.h".
  */
 
 #include "libpurple/internal.h"
@@ -55,12 +55,12 @@ Code_t ZSetVariable(var, value)
     char *varfile, *varfilebackup, varbfr[512];
 
     written = 0;
-	
+
     if ((varfile = get_localvarfile()) == NULL)
 	return (ZERR_INTERNAL);
 
     varfilebackup = g_strconcat(varfile, ".backup", NULL);
-	
+
     if (!(fpout = fopen(varfilebackup, "w"))) {
 	g_free(varfile);
 	g_free(varfilebackup);
@@ -78,7 +78,7 @@ Code_t ZSetVariable(var, value)
 		fprintf(fpout, "%s\n", varbfr);
 	}
 	(void) fclose(fpin);		/* don't care about errs on input */
-    } 
+    }
     if (!written)
 	fprintf(fpout, "%s = %s\n", var, value);
     if (fclose(fpout) == EOF) {
@@ -94,7 +94,7 @@ Code_t ZSetVariable(var, value)
     g_free(varfilebackup);
     g_free(varfile);
     return (ZERR_NONE);
-}	
+}
 
 Code_t ZUnsetVariable(var)
     char *var;
@@ -106,7 +106,7 @@ Code_t ZUnsetVariable(var)
 	return (ZERR_INTERNAL);
 
     varfilebackup = g_strconcat(varfile, ".backup", NULL);
-	
+
     if (!(fpout = fopen(varfilebackup, "w"))) {
 	g_free(varfile);
 	g_free(varfilebackup);
@@ -120,7 +120,7 @@ Code_t ZUnsetVariable(var)
 		fprintf(fpout, "%s\n", varbfr);
 	}
 	(void) fclose(fpin);		/* don't care about read close errs */
-    } 
+    }
     if (fclose(fpout) == EOF) {
 	g_free(varfilebackup);
 	g_free(varfile);
@@ -134,7 +134,7 @@ Code_t ZUnsetVariable(var)
     g_free(varfilebackup);
     g_free(varfile);
     return (ZERR_NONE);
-}	
+}
 
 static char *get_localvarfile(void)
 {
@@ -146,7 +146,7 @@ static char *get_localvarfile(void)
     base = getenv("HOME");
     if (!base)
         base = getenv("HOMEPATH");
-    if (!base) 
+    if (!base)
         base = "C:\\";
 #endif
     if (!base) {
@@ -160,8 +160,8 @@ static char *get_localvarfile(void)
     }
 
     return g_strconcat(base, "/.zephyr.vars", NULL);
-} 
-	
+}
+
 static char *get_varval(fn, var)
     char *fn;
     char *var;
@@ -169,7 +169,7 @@ static char *get_varval(fn, var)
     FILE *fp;
     static char varbfr[512];
     int i;
-	
+
     fp = fopen(fn, "r");
     if (!fp)
 	return ((char *)0);
@@ -193,11 +193,11 @@ static int varline(bfr, var)
     char *var;
 {
     register char *cp;
-	
 
+
     if (!bfr[0] || bfr[0] == '#')	/* comment or null line */
 	return (0);
-	
+
     cp = bfr;
     while (*cp && !isspace(*cp) && (*cp != '='))
 	cp++;
============================================================
--- libpurple/protocols/zephyr/ZWait4Not.c	62f1fe7d646ccf4e6759d278732933fdf6b58fad
+++ libpurple/protocols/zephyr/ZWait4Not.c	ec82d345bfe62a14866ad6130ebd0baea3216010
@@ -4,7 +4,7 @@
  *
  *	Copyright (c) 1991 by the Massachusetts Institute of Technology.
  *	For copying and distribution information, see the file
- *	"mit-copyright.h". 
+ *	"mit-copyright.h".
  */
 
 #include "internal.h"
============================================================
--- libpurple/protocols/zephyr/Zinternal.c	670eaa4ce8b9c2e59400bf3f5532b2ade9df30e7
+++ libpurple/protocols/zephyr/Zinternal.c	b0712989c02f381110ac740f7fbb4e51a4fa123c
@@ -6,7 +6,7 @@
  *	Copyright (c) 1987,1988,1991 by the Massachusetts Institute of
  *	Technology.
  *	For copying and distribution information, see the file
- *	"mit-copyright.h". 
+ *	"mit-copyright.h".
  */
 
 #include "internal.h"
@@ -25,7 +25,7 @@
      p->tv_sec= (long)((_now.ns100-(116444736000000000LL))/10000000LL);
      return 0;
    }
-#endif 
+#endif
 
 #else
 #include <arpa/inet.h>
@@ -151,7 +151,7 @@ static int Z_PacketWaiting(void)
     FD_ZERO(&read);
     FD_SET(ZGetFD(), &read);
     return (select(ZGetFD() + 1, &read, NULL, NULL, &tv));
-} 
+}
 
 
 /* Wait for a complete notice to become available */
@@ -179,7 +179,7 @@ Code_t Z_ReadEnqueue()
 
     if (ZGetFD() < 0)
 	return (ZERR_NOPORT);
-    
+
     while (Z_PacketWaiting())
 	if ((retval = Z_ReadWait()) != ZERR_NONE)
 	    return (retval);
@@ -238,7 +238,7 @@ Code_t Z_ReadWait()
 
     if (ZGetFD() < 0)
 	return (ZERR_NOPORT);
-	
+
     FD_ZERO(&fds);
     FD_SET(ZGetFD(), &fds);
     tv.tv_sec = 60;
@@ -251,7 +251,7 @@ Code_t Z_ReadWait()
 
     from_len = sizeof(struct sockaddr_in);
 
-    packet_len = recvfrom(ZGetFD(), packet, sizeof(packet), 0, 
+    packet_len = recvfrom(ZGetFD(), packet, sizeof(packet), 0,
 			  (struct sockaddr *)&from, &from_len);
 
     if (packet_len < 0)
@@ -265,7 +265,7 @@ Code_t Z_ReadWait()
     if (packet_len < zvlen || memcmp(packet, ZVERSIONHDR, zvlen) != 0) {
 	Z_discarded_packets++;
 	return (ZERR_NONE);
-    }	
+    }
 
     /* Parse the notice */
     if ((retval = ZParseNotice(packet, packet_len, &notice)) != ZERR_NONE)
@@ -393,13 +393,13 @@ Code_t Z_ReadWait()
     if (!__Q_Head)
 	__Q_Head = qptr;
 
-    
+
     /* Copy the from field, multiuid, kind, and checked authentication. */
     qptr->from = from;
     qptr->uid = notice.z_multiuid;
     qptr->kind = notice.z_kind;
     qptr->auth = notice.z_checked_auth;
-    
+
     /*
      * If this is the first part of the notice, we take the header
      * from it.  We only take it if this is the first fragment so that
@@ -486,7 +486,7 @@ Code_t Z_AddNoticeToEntry(qptr, notice, 
 
     (void) gettimeofday(&tv, (struct timezone *)0);
     qptr->timep = tv.tv_sec;
-    
+
     last = part+notice->z_message_len-1;
 
     hole = qptr->holelist;
@@ -578,7 +578,7 @@ Code_t Z_AddNoticeToEntry(qptr, notice, 
 	(void) memcpy(qptr->packet+qptr->header_len, qptr->msg,
 		       qptr->msg_len);
     }
-    
+
     return (ZERR_NONE);
 }
 
@@ -610,11 +610,11 @@ Code_t Z_FormatHeader(notice, buffer, bu
     }
 
     notice->z_multinotice = "";
-    
+
     (void) gettimeofday(&notice->z_uid.tv, (struct timezone *)0);
     notice->z_uid.tv.tv_sec = htonl((unsigned long) notice->z_uid.tv.tv_sec);
     notice->z_uid.tv.tv_usec = htonl((unsigned long) notice->z_uid.tv.tv_usec);
-    
+
     (void) memcpy(&notice->z_uid.zuid_addr, &__My_addr, sizeof(__My_addr));
 
     notice->z_multiuid = notice->z_uid;
@@ -642,10 +642,10 @@ Code_t Z_FormatAuthHeader(notice, buffer
 	return (Z_FormatRawHeader(notice, buffer, buffer_len,
 				  len, NULL, NULL));
     }
-    
+
     return ((*cert_routine)(notice, buffer, buffer_len, len));
-} 
-	
+}
+
 Code_t Z_FormatRawHeader(notice, buffer, buffer_len, len, cstart, cend)
     ZNotice_t *notice;
     char *buffer;
@@ -690,7 +690,7 @@ Code_t Z_FormatRawHeader(notice, buffer,
 	return (ZERR_HEADERLEN);
     ptr += strlen(ptr)+1;
 
-    if (ZMakeAscii(ptr, end-ptr, (unsigned char *)&notice->z_uid, 
+    if (ZMakeAscii(ptr, end-ptr, (unsigned char *)&notice->z_uid,
 		   sizeof(ZUnique_Id_t)) == ZERR_FIELDLEN)
 	return (ZERR_HEADERLEN);
     ptr += strlen(ptr)+1;
@@ -728,7 +728,7 @@ Code_t Z_FormatRawHeader(notice, buffer,
 	(void) sprintf(newrecip, "%s@%s", notice->z_recipient, __Zephyr_realm);
 	if (Z_AddField(&ptr, newrecip, end))
 	    return (ZERR_HEADERLEN);
-    }		
+    }
     if (Z_AddField(&ptr, notice->z_default_format, end))
 	return (ZERR_HEADERLEN);
 
@@ -744,17 +744,17 @@ Code_t Z_FormatRawHeader(notice, buffer,
     if (Z_AddField(&ptr, notice->z_multinotice, end))
 	return (ZERR_HEADERLEN);
 
-    if (ZMakeAscii(ptr, end-ptr, (unsigned char *)&notice->z_multiuid, 
+    if (ZMakeAscii(ptr, end-ptr, (unsigned char *)&notice->z_multiuid,
 		   sizeof(ZUnique_Id_t)) == ZERR_FIELDLEN)
 	return (ZERR_HEADERLEN);
     ptr += strlen(ptr)+1;
-	
+
     for (i=0;i<notice->z_num_other_fields;i++)
 	if (Z_AddField(&ptr, notice->z_other_fields[i], end))
 	    return (ZERR_HEADERLEN);
-    
+
     *len = ptr-buffer;
-	
+
     return (ZERR_NONE);
 }
 
@@ -808,39 +808,39 @@ void Z_RemQueue(qptr)
     struct _Z_InputQ *qptr;
 {
     struct _Z_Hole *hole, *nexthole;
-    
+
     if (qptr->complete)
 	__Q_CompleteLength--;
 
     __Q_Size -= qptr->msg_len;
-    
+
     if (qptr->header)
 	free(qptr->header);
     if (qptr->msg)
 	free(qptr->msg);
     if (qptr->packet)
 	free(qptr->packet);
-    
+
     hole = qptr->holelist;
     while (hole) {
 	nexthole = hole->next;
 	free((char *)hole);
 	hole = nexthole;
     }
-    
+
     if (qptr == __Q_Head && __Q_Head == __Q_Tail) {
 	free ((char *)qptr);
 	__Q_Head = (struct _Z_InputQ *)0;
 	__Q_Tail = (struct _Z_InputQ *)0;
 	return;
     }
-    
+
     if (qptr == __Q_Head) {
 	__Q_Head = qptr->next;
 	__Q_Head->prev = (struct _Z_InputQ *)0;
 	free ((char *)qptr);
 	return;
-    } 
+    }
     if (qptr == __Q_Tail) {
 	__Q_Tail = qptr->prev;
 	__Q_Tail->next = (struct _Z_InputQ *)0;
@@ -864,15 +864,15 @@ Code_t Z_SendFragmentedNotice(notice, le
     char multi[64];
     int offset, hdrsize, fragsize, ret_len, message_len, waitforack;
     Code_t retval;
-    
+
     hdrsize = len-notice->z_message_len;
     fragsize = Z_MAXPKTLEN-hdrsize-Z_FRAGFUDGE;
-    
+
     offset = 0;
 
     waitforack = ((notice->z_kind == UNACKED || notice->z_kind == ACKED)
 		  && !__Zephyr_server);
-    
+
     partnotice = *notice;
 
     while (offset < notice->z_message_len || !notice->z_message_len) {
@@ -885,7 +885,7 @@ Code_t Z_SendFragmentedNotice(notice, le
 		htonl((unsigned long) partnotice.z_uid.tv.tv_sec);
 	    partnotice.z_uid.tv.tv_usec =
 		htonl((unsigned long) partnotice.z_uid.tv.tv_usec);
-	    (void) memcpy((char *)&partnotice.z_uid.zuid_addr, &__My_addr, 
+	    (void) memcpy((char *)&partnotice.z_uid.zuid_addr, &__My_addr,
 			  sizeof(__My_addr));
 	}
 	message_len = min(notice->z_message_len-offset, fragsize);
============================================================
--- libpurple/protocols/zephyr/zephyr.c	f2415735b9165ab2cadfedcacc1c783772f22fec
+++ libpurple/protocols/zephyr/zephyr.c	aa3e1af8938b06d613c5ae95f180588f42d9511d
@@ -9,7 +9,7 @@
  *
  * Some code borrowed from kzephyr, by
  * Chris Colohan <colohan+ at cs.cmu.edu>
- * 
+ *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
  * the Free Software Foundation; either version 2 of the License, or
@@ -98,9 +98,9 @@ struct _parse_tree {
 	int num_children;
 };
 
-parse_tree null_parse_tree = { 
-	"", 
-	{NULL}, 
+parse_tree null_parse_tree = {
+	"",
+	{NULL},
 	0,
 };
 
@@ -175,7 +175,7 @@ static Code_t zephyr_subscribe_to(zephyr
 			ZSubscription_t sub;
 			sub.zsub_class = class;
 			sub.zsub_classinst = instance;
-			sub.zsub_recipient = recipient; 
+			sub.zsub_recipient = recipient;
 			ret_val = ZSubscribeTo(&sub,1,0);
 		}
 	}
@@ -188,7 +188,7 @@ static char *zephyr_strip_local_realm(ze
 
 static char *zephyr_strip_local_realm(zephyr_account* zephyr,const char* user){
 	/*
-	  Takes in a username of the form username or username at realm 
+	  Takes in a username of the form username or username at realm
 	  and returns:
 	  username, if there is no realm, or the realm is the local realm
 	  or:
@@ -255,9 +255,9 @@ static void free_triple(zephyr_triple * 
 /* returns true if zt1 is a subset of zt2.  This function is used to
    determine whether a zephyr sent to zt1 should be placed in the chat
    with triple zt2
- 
-   zt1 is a subset of zt2 
-   iff. the classnames are identical ignoring case 
+
+   zt1 is a subset of zt2
+   iff. the classnames are identical ignoring case
    AND. the instance names are identical (ignoring case), or zt2->instance is *.
    AND. the recipient names are identical
 */
@@ -266,7 +266,7 @@ static gboolean triple_subset(zephyr_tri
 {
 
 	if (!zt2) {
-		purple_debug_error("zephyr","zt2 doesn't exist\n"); 
+		purple_debug_error("zephyr","zt2 doesn't exist\n");
 		return FALSE;
 	}
 	if (!zt1) {
@@ -339,7 +339,7 @@ static zephyr_triple *find_sub_by_id(zep
 	return NULL;
 }
 
-/* 
+/*
    Converts strings to utf-8 if necessary using user specified encoding
 */
 
@@ -362,7 +362,7 @@ static gchar *zephyr_recv_convert(Purple
 	}
 }
 
-/* This parses HTML formatting (put out by one of the gtkimhtml widgets 
+/* This parses HTML formatting (put out by one of the gtkimhtml widgets
    And converts it to zephyr formatting.
    It currently deals properly with <b>, <br>, <i>, <font face=...>, <font color=...>,
    It ignores <font back=...>
@@ -801,19 +801,19 @@ static void handle_message(PurpleConnect
 				}
 				for (; nlocs > 0; nlocs--) {
 					/* XXX add real error reporting */
-					
+
 					ZGetLocations(&locs, &one);
-					tmp = g_strdup_printf(_("<br>At %s since %s"), locs.host, locs.time);	
+					tmp = g_strdup_printf(_("<br>At %s since %s"), locs.host, locs.time);
 					purple_notify_user_info_add_pair(user_info, _("Location"), tmp);
 					g_free(tmp);
 				}
-				purple_notify_userinfo(gc, (b ? bname : user), 
+				purple_notify_userinfo(gc, (b ? bname : user),
 						     user_info, NULL, NULL);
 				purple_notify_user_info_destroy(user_info);
 			} else {
-				if (nlocs>0) 
+				if (nlocs>0)
 					purple_prpl_got_user_status(gc->account, b ? bname : user, "available", NULL);
-				else 
+				else
 					purple_prpl_got_user_status(gc->account, b ? bname : user, "offline", NULL);
 			}
 
@@ -825,7 +825,7 @@ static void handle_message(PurpleConnect
 		PurpleConversation *gconv1;
 		PurpleConvChat *gcc;
 		char *ptr = (char *) notice.z_message + (strlen(notice.z_message) + 1);
-		int len; 
+		int len;
 		char *stripped_sender;
 		int signature_length = strlen(notice.z_message);
 		int message_has_no_body = 0;
@@ -839,7 +839,7 @@ static void handle_message(PurpleConnect
 			len = 0;
 			purple_debug_info("zephyr","message_size %d %d %d\n",len,notice.z_message_len,signature_length);
 			buf3 = g_strdup("");
-						
+
 		} else {
 			len =  notice.z_message_len - ( signature_length +1);
 			purple_debug_info("zephyr","message_size %d %d %d\n",len,notice.z_message_len,signature_length);
@@ -856,11 +856,11 @@ static void handle_message(PurpleConnect
 
 		stripped_sender = zephyr_strip_local_realm(zephyr,notice.z_sender);
 
-		if (!g_ascii_strcasecmp(notice.z_class, "MESSAGE") && !g_ascii_strcasecmp(notice.z_class_inst, "PERSONAL") 
+		if (!g_ascii_strcasecmp(notice.z_class, "MESSAGE") && !g_ascii_strcasecmp(notice.z_class_inst, "PERSONAL")
 		    && !g_ascii_strcasecmp(notice.z_recipient,zephyr->username)) {
 			if (!g_ascii_strcasecmp(notice.z_message, "Automated reply:"))
 				flags |= PURPLE_MESSAGE_AUTO_RESP;
-			
+
 			if (!g_ascii_strcasecmp(notice.z_opcode,"PING"))
 				serv_got_typing(gc,stripped_sender,ZEPHYR_TYPING_RECV_TIMEOUT, PURPLE_TYPING);
 			else
@@ -876,8 +876,8 @@ static void handle_message(PurpleConnect
 				/* This is a server supplied subscription */
 				zephyr->subscrips = g_slist_append(zephyr->subscrips, new_triple(zephyr,zt1->class,zt1->instance,zt1->recipient));
 				zt2 = find_sub_by_triple(gc->proto_data,zt1);
-			} 
-					
+			}
+
 			if (!zt2->open) {
 				zt2->open = TRUE;
 				serv_got_joined_chat(gc, zt2->id, zt2->name);
@@ -936,7 +936,7 @@ static int  free_parse_tree(parse_tree* 
 			}
 		}
 		if ((tree != &null_parse_tree) && (tree->contents != NULL))
-			g_free(tree->contents);	  
+			g_free(tree->contents);
 
 	}
 	return 0;
@@ -954,7 +954,7 @@ static parse_tree *find_node(parse_tree*
 {
 	gchar* tc;
 
-	if (!ptree || ! key) 
+	if (!ptree || ! key)
 		return &null_parse_tree;
 
 	tc = tree_child(ptree,0)->contents;
@@ -976,7 +976,7 @@ static parse_tree *parse_buffer(gchar* s
 }
 
 static parse_tree *parse_buffer(gchar* source, gboolean do_parse) {
-	
+
 	parse_tree *ptree = g_new0(parse_tree,1);
 	ptree->contents = NULL;
 	ptree->num_children=0;
@@ -991,7 +991,7 @@ static parse_tree *parse_buffer(gchar* s
 				p++;
 				continue;
 			}
-			
+
 			/* Skip comments */
 			if(source[p] == ';') {
 				while(source[p] != '\n' && p < strlen(source)) {
@@ -999,7 +999,7 @@ static parse_tree *parse_buffer(gchar* s
 				}
 				continue;
 			}
-			
+
 			if(source[p] == '(') {
 				int nesting = 0;
 				gboolean in_quote = FALSE;
@@ -1036,12 +1036,12 @@ static parse_tree *parse_buffer(gchar* s
 					p++;
 				} else {
 					end_char = ' ';
-				}					      
+				}
 				do_parse = FALSE;
 
 				end = p;
 				while(source[end] != end_char && end < strlen(source)) {
-					if(source[end] == '\\') 
+					if(source[end] == '\\')
 						end++;
 					end++;
 				}
@@ -1136,16 +1136,16 @@ static gint check_notify_tzc(gpointer da
 				/*				  g_free(zsig); */
 				g_free(buf);
 				/* free_parse_tree(msgnode);
-				   free_parse_tree(bodynode); 
+				   free_parse_tree(bodynode);
 				   g_free(msg);
 				   g_free(zsig);
-				   g_free(buf); 
+				   g_free(buf);
 				*/
 			}
 			else if (!g_ascii_strncasecmp(spewtype,"zlocation",9)) {
 				/* check_loc or zephyr_zloc respectively */
 				/* XXX fix */
-				char *user; 
+				char *user;
 				PurpleBuddy *b;
 				const char *bname;
 				int nlocs = 0;
@@ -1166,7 +1166,7 @@ static gint check_notify_tzc(gpointer da
 				} else {
 					nlocs = 1;
 				}
-	
+
 				bname = b ? purple_buddy_get_name(b) : NULL;
 				if ((b && pending_zloc(zephyr,bname)) || pending_zloc(zephyr,user) || pending_zloc(zephyr,local_zephyr_normalize(zephyr,user))){
 					PurpleNotifyUserInfo *user_info = purple_notify_user_info_new();
@@ -1193,9 +1193,9 @@ static gint check_notify_tzc(gpointer da
 							     user_info, NULL, NULL);
 					purple_notify_user_info_destroy(user_info);
 				} else {
-					if (nlocs>0) 
+					if (nlocs>0)
 						purple_prpl_got_user_status(gc->account, b ? bname : user, "available", NULL);
-					else 
+					else
 						purple_prpl_got_user_status(gc->account, b ? bname : user, "offline", NULL);
 				}
 			}
@@ -1210,7 +1210,7 @@ static gint check_notify_tzc(gpointer da
 		}
 	} else {
 	}
-	
+
 	free_parse_tree(newparsetree);
 	return TRUE;
 }
@@ -1319,9 +1319,9 @@ static gint check_loc(gpointer data)
 				int i;
 				for(i=0;i<numlocs;i++) {
 					ZGetLocations(&locations,&one);
-					if (nlocs>0) 
+					if (nlocs>0)
 						purple_prpl_got_user_status(account,name,"available",NULL);
-					else 
+					else
 						purple_prpl_got_user_status(account,name,"offline",NULL);
 				}
 			}
@@ -1330,7 +1330,7 @@ static gint check_loc(gpointer data)
 			g_free(ald.user);
 			g_free(ald.version);
 #endif /* WIN32 */
-		} else 
+		} else
 			if (use_tzc(zephyr)) {
 				gchar *zlocstr = g_strdup_printf("((tzcfodder . zlocate) \"%s\")\n",chk);
 				size_t len = strlen(zlocstr);
@@ -1381,14 +1381,14 @@ static void zephyr_inithosts(zephyr_acco
 {
 	/* XXX This code may not be Win32 clean */
 	struct hostent *hent;
-	
+
 	if (gethostname(zephyr->ourhost, sizeof(zephyr->ourhost)) == -1) {
 		purple_debug_error("zephyr", "unable to retrieve hostname, %%host%% and %%canon%% will be wrong in subscriptions and have been set to unknown\n");
 		g_strlcpy(zephyr->ourhost, "unknown", sizeof(zephyr->ourhost));
 		g_strlcpy(zephyr->ourhostcanon, "unknown", sizeof(zephyr->ourhostcanon));
 		return;
 	}
-	
+
 	if (!(hent = gethostbyname(zephyr->ourhost))) {
 		purple_debug_error("zephyr", "unable to resolve hostname, %%canon%% will be wrong in subscriptions.and has been set to the value of %%host%%, %s\n",zephyr->ourhost);
 		g_strlcpy(zephyr->ourhostcanon, zephyr->ourhost, sizeof(zephyr->ourhostcanon));
@@ -1402,7 +1402,7 @@ static void process_zsubs(zephyr_account
 
 static void process_zsubs(zephyr_account *zephyr)
 {
-	/* Loads zephyr chats "(subscriptions) from ~/.zephyr.subs, and 
+	/* Loads zephyr chats "(subscriptions) from ~/.zephyr.subs, and
 	   registers (subscribes to) them on the server */
 
 	/* XXX deal with unsubscriptions */
@@ -1467,7 +1467,7 @@ static void process_zsubs(zephyr_account
 					} else {
 						z_class = g_strdup(triple[0]);
 					}
-					
+
 					if (!g_ascii_strcasecmp(triple[1],"%host%")) {
 						z_instance = g_strdup(zephyr->ourhost);
 					} else if (!g_ascii_strcasecmp(triple[1],"%canon%")) {
@@ -1520,7 +1520,7 @@ static void process_anyone(PurpleConnect
 					if (!(b = purple_find_buddy(gc->account,stripped_user))){
 						b = purple_buddy_new(gc->account, stripped_user, NULL);
 						purple_blist_add_buddy(b, NULL, g, NULL);
-					} 
+					}
 					g_free(stripped_user);
 				}
 			}
@@ -1552,20 +1552,20 @@ static void zephyr_login(PurpleAccount *
 {
 	PurpleConnection *gc;
 	zephyr_account *zephyr;
-	gboolean read_anyone; 
-	gboolean read_zsubs; 
+	gboolean read_anyone;
+	gboolean read_zsubs;
 	gchar *exposure;
 
 	gc = purple_account_get_connection(account);
 	read_anyone = purple_account_get_bool(gc->account,"read_anyone",TRUE);
 	read_zsubs = purple_account_get_bool(gc->account,"read_zsubs",TRUE);
-	exposure = (gchar *)purple_account_get_string(gc->account, "exposure_level", EXPOSE_REALMVIS); 
+	exposure = (gchar *)purple_account_get_string(gc->account, "exposure_level", EXPOSE_REALMVIS);
 
 #ifdef WIN32
 	username = purple_account_get_username(account);
 #endif
 	gc->flags |= PURPLE_CONNECTION_AUTO_RESP | PURPLE_CONNECTION_HTML | PURPLE_CONNECTION_NO_BGCOLOR | PURPLE_CONNECTION_NO_URLDESC;
-	gc->proto_data = zephyr=g_new0(zephyr_account,1); 
+	gc->proto_data = zephyr=g_new0(zephyr_account,1);
 
 	zephyr->account = account;
 
@@ -1589,9 +1589,9 @@ static void zephyr_login(PurpleAccount *
 			purple_debug_error("zephyr", "pipe creation failed. killing\n");
 			exit(-1);
 		}
-		
+
 		pid = fork();
-		
+
 		if (pid == -1) {
 			purple_debug_error("zephyr", "forking failed\n");
 			exit(-1);
@@ -1618,10 +1618,10 @@ static void zephyr_login(PurpleAccount *
 			if (close(zephyr->totzc[0]) == -1) {
 				exit(-1);
 			}
-			/* tzc_command should really be of the form 
+			/* tzc_command should really be of the form
 			   path/to/tzc -e %s
 			   or
-			   ssh username at hostname pathtotzc -e %s 
+			   ssh username at hostname pathtotzc -e %s
 			   -- this should not require a password, and ideally should be kerberized ssh --
 			   or
 			   fsh username at hostname pathtotzc -e %s
@@ -1631,7 +1631,7 @@ static void zephyr_login(PurpleAccount *
 					/*					fprintf(stderr,"replacing %%s with %s\n",zephyr->exposure); */
 					tzc_cmd_array[i] = g_strdup(zephyr->exposure);
 					found_ps = TRUE;
-					
+
 				} else {
 					/*					fprintf(stderr,"keeping %s\n",tzc_cmd_array[i]); */
 				}
@@ -1712,24 +1712,24 @@ static void zephyr_login(PurpleAccount *
 
 			while(ptr < bufcur) {
 				if (*ptr == '(') {
-					parenlevel++; 
+					parenlevel++;
 				}
 				else if (*ptr == ')') {
 					parenlevel--;
 				}
 				purple_debug_info("zephyr","tzc parenlevel is %d\n",parenlevel);
 				switch (parenlevel) {
-				case 0: 
+				case 0:
 					break;
 				case 1:
 					/* Search for next beginning (, or for the ending */
 					ptr++;
-					while((*ptr != '(') && (*ptr != ')') && (ptr <bufcur)) 
+					while((*ptr != '(') && (*ptr != ')') && (ptr <bufcur))
 						ptr++;
-					if (ptr >= bufcur) 
+					if (ptr >= bufcur)
 						purple_debug_error("zephyr","tzc parsing error\n");
 					break;
-				case 2: 
+				case 2:
 					/* You are probably at
 					   (foo . bar ) or (foo . "bar") or (foo . chars) or (foo . numbers) or (foo . () )
 					   Parse all the data between the first and last f, and move past )
@@ -1749,9 +1749,9 @@ static void zephyr_login(PurpleAccount *
 						}
 					}
 					purple_debug_info("zephyr","tempstr parsed\n");
-					/* tempstr should now be a tempstridx length string containing all characters 
+					/* tempstr should now be a tempstridx length string containing all characters
 					   from that after the first ( to the one before the last paren ). */
-					/* We should have the following possible lisp strings but we don't care 
+					/* We should have the following possible lisp strings but we don't care
 					   (tzcspew . start) (version . "something") (pid . number)*/
 					/* We care about 'zephyrid . "username at REALM.NAME"' and 'exposure . "SOMETHING"' */
 					tempstridx=0;
@@ -1766,9 +1766,9 @@ static void zephyr_login(PurpleAccount *
 						tempstridx++;
 						while(tempstr[tempstridx] !='"' && tempstridx < 20000)
 							username[username_idx++]=tempstr[tempstridx++];
-							
+
 						zephyr->username = g_strdup_printf("%s",username);
-						if ((realm = strchr(username,'@'))) 
+						if ((realm = strchr(username,'@')))
 							zephyr->realm = g_strdup_printf("%s",realm+1);
 						else {
 							realm = (gchar *)purple_account_get_string(gc->account,"realm","");
@@ -1781,12 +1781,12 @@ static void zephyr_login(PurpleAccount *
 						/* else {
 						   zephyr->realm = g_strdup("local-realm");
 						   }*/
-							
+
 						g_free(username);
 					}  else {
 						purple_debug_info("zephyr", "something that's not zephyr id found %s\n",tempstr);
 					}
-					
+
 					/* We don't care about anything else yet */
 					g_free(tempstr);
 					break;
@@ -1850,8 +1850,8 @@ static void zephyr_login(PurpleAccount *
 		zephyr->nottimer = purple_timeout_add(100, check_notify_zeph02, gc);
 	} else if (use_tzc(zephyr)) {
 		zephyr->nottimer = purple_timeout_add(100, check_notify_tzc, gc);
-	} 
-	zephyr->loctimer = purple_timeout_add_seconds(20, check_loc, gc); 
+	}
+	zephyr->loctimer = purple_timeout_add_seconds(20, check_loc, gc);
 
 }
 
@@ -1881,7 +1881,7 @@ static void write_zsubs(zephyr_account *
 		char *zclass, *zinst, *zrecip;
 		zt = s->data;
 		triple = g_strsplit(zt->name, ",", 3);
-		
+
 		/* deal with classes */
 		if (!g_ascii_strcasecmp(triple[0],zephyr->ourhost)) {
 			zclass = g_strdup("%host%");
@@ -1913,7 +1913,7 @@ static void write_zsubs(zephyr_account *
 		}
 
 		fprintf(fd, "%s,%s,%s\n",zclass,zinst,zrecip);
-		 
+
 		g_free(zclass);
 		g_free(zinst);
 		g_free(zrecip);
@@ -1995,7 +1995,7 @@ static void zephyr_close(PurpleConnectio
 			int err=errno;
 			if (err==EINVAL) {
 				purple_debug_error("zephyr","An invalid signal was specified when killing tzc\n");
-			} 
+			}
 			else if (err==ESRCH) {
 				purple_debug_error("zephyr","Tzc's pid didn't exist while killing tzc\n");
 			}
@@ -2009,7 +2009,7 @@ static void zephyr_close(PurpleConnectio
 	}
 }
 
-static int zephyr_send_message(zephyr_account *zephyr,char* zclass, char* instance, char* recipient, const char *im, 
+static int zephyr_send_message(zephyr_account *zephyr,char* zclass, char* instance, char* recipient, const char *im,
 			       const char *sig, char *opcode) ;
 
 static const char * zephyr_get_signature(void)
@@ -2067,7 +2067,7 @@ static int zephyr_send_im(PurpleConnecti
 	}
 	zephyr_send_message(zephyr,"MESSAGE","PERSONAL",local_zephyr_normalize(zephyr,who),im,sig,"");
 
-	return 1; 
+	return 1;
 }
 
 /* Munge the outgoing zephyr so that any quotes or backslashes are
@@ -2091,7 +2091,7 @@ static char* zephyr_tzc_escape_msg(const
 				newmsg[pos2]='\\';
 				newmsg[pos2+1]='"';
 				pos2+=2;
-			} 
+			}
 			else {
 				newmsg[pos2] = message[pos];
 				pos2++;
@@ -2128,13 +2128,13 @@ char* zephyr_tzc_deescape_str(const char
 	return newmsg;
 }
 
-static int zephyr_send_message(zephyr_account *zephyr,char* zclass, char* instance, char* recipient, const char *im, 
-			       const char *sig, char *opcode) 
+static int zephyr_send_message(zephyr_account *zephyr,char* zclass, char* instance, char* recipient, const char *im,
+			       const char *sig, char *opcode)
 {
 
-	/* (From the tzc source) 
+	/* (From the tzc source)
 	 * emacs sends something of the form:
-	 * ((class . "MESSAGE") 
+	 * ((class . "MESSAGE")
 	 *  (auth . t)
 	 *  (recipients ("PERSONAL" . "bovik") ("test" . ""))
 	 *  (sender . "bovik")
@@ -2169,7 +2169,7 @@ static int zephyr_send_message(zephyr_ac
 		ZNotice_t notice;
 		char *buf = g_strdup_printf("%s%c%s", sig, '\0', html_buf2);
 		memset((char *)&notice, 0, sizeof(notice));
-		
+
 		notice.z_kind = ACKED;
 		notice.z_port = 0;
 		notice.z_opcode = "";
@@ -2201,11 +2201,11 @@ char *local_zephyr_normalize(zephyr_acco
 
 char *local_zephyr_normalize(zephyr_account *zephyr,const char *orig)
 {
-	/* 
-	   Basically the inverse of zephyr_strip_local_realm 
-	*/	
+	/*
+	   Basically the inverse of zephyr_strip_local_realm
+	*/
 	char* buf;
-	
+
 	if (!g_ascii_strcasecmp(orig, "")) {
 		return g_strdup("");
 	}
@@ -2214,7 +2214,7 @@ char *local_zephyr_normalize(zephyr_acco
 		buf = g_strdup_printf("%s",orig);
 	} else {
 		buf = g_strdup_printf("%s@%s",orig,zephyr->realm);
-	} 
+	}
 	return buf;
 }
 
@@ -2281,7 +2281,7 @@ static void zephyr_set_status(PurpleAcco
 
 	if (primitive == PURPLE_STATUS_AWAY) {
 		zephyr->away = g_strdup(purple_status_get_attr_string(status,"message"));
-	} 
+	}
 	else if (primitive == PURPLE_STATUS_AVAILABLE) {
 		if (use_zeph02(zephyr)) {
 			ZSetLocation(zephyr->exposure);
@@ -2295,7 +2295,7 @@ static void zephyr_set_status(PurpleAcco
 			}
 			g_free(zexpstr);
 		}
-	} 
+	}
 	else if (primitive == PURPLE_STATUS_INVISIBLE) {
 		/* XXX handle errors */
 		if (use_zeph02(zephyr)) {
@@ -2312,12 +2312,12 @@ static void zephyr_set_status(PurpleAcco
 	}
 }
 
-static GList *zephyr_status_types(PurpleAccount *account) 
+static GList *zephyr_status_types(PurpleAccount *account)
 {
 	PurpleStatusType *type;
 	GList *types = NULL;
 
-	/* zephyr has several exposures 
+	/* zephyr has several exposures
 	   NONE (where you are hidden, and zephyrs to you are in practice silently dropped -- yes this is wrong)
 	   OPSTAFF "hidden"
 	   REALM-VISIBLE visible to people in local realm
@@ -2410,13 +2410,13 @@ static void zephyr_join_chat(PurpleConne
 	instname = g_hash_table_lookup(data, "instance");
 	recip = g_hash_table_lookup(data, "recipient");
 
-		
+
 	if (!classname)
 		return;
 
 	if (!g_ascii_strcasecmp(classname,"%host%"))
 		classname = g_strdup(zephyr->ourhost);
-	if (!g_ascii_strcasecmp(classname,"%canon%")) 
+	if (!g_ascii_strcasecmp(classname,"%canon%"))
 		classname = g_strdup(zephyr->ourhostcanon);
 
 	if (!instname || !strlen(instname))
@@ -2424,7 +2424,7 @@ static void zephyr_join_chat(PurpleConne
 
 	if (!g_ascii_strcasecmp(instname,"%host%"))
 		instname = g_strdup(zephyr->ourhost);
-	if (!g_ascii_strcasecmp(instname,"%canon%")) 
+	if (!g_ascii_strcasecmp(instname,"%canon%"))
 		instname = g_strdup(zephyr->ourhostcanon);
 
 	if (!recip || (*recip == '*'))
@@ -2437,15 +2437,15 @@ static void zephyr_join_chat(PurpleConne
 	if (zt2) {
 		free_triple(zt1);
 		if (!zt2->open) {
-			if (!g_ascii_strcasecmp(instname,"*")) 
+			if (!g_ascii_strcasecmp(instname,"*"))
 				instname = "PERSONAL";
 			serv_got_joined_chat(gc, zt2->id, zt2->name);
 			zephyr_chat_set_topic(gc,zt2->id,instname);
 			zt2->open = TRUE;
-		}	
+		}
 		return;
 	}
-	
+
 	/*	sub.zsub_class = zt1->class;
 		sub.zsub_classinst = zt1->instance;
 		sub.zsub_recipient = zt1->recipient; */
@@ -2460,7 +2460,7 @@ static void zephyr_join_chat(PurpleConne
 	zephyr->subscrips = g_slist_append(zephyr->subscrips, zt1);
 	zt1->open = TRUE;
 	serv_got_joined_chat(gc, zt1->id, zt1->name);
-	if (!g_ascii_strcasecmp(instname,"*")) 
+	if (!g_ascii_strcasecmp(instname,"*"))
 		instname = "PERSONAL";
 	zephyr_chat_set_topic(gc,zt1->id,instname);
 }
@@ -2519,7 +2519,7 @@ static unsigned int zephyr_send_typing(P
 static unsigned int zephyr_send_typing(PurpleConnection *gc, const char *who, PurpleTypingState state) {
 	gchar *recipient;
 	zephyr_account *zephyr = gc->proto_data;
-	if (use_tzc(zephyr)) 
+	if (use_tzc(zephyr))
 		return 0;
 
 	if (state == PURPLE_NOT_TYPING)
@@ -2565,7 +2565,7 @@ static void zephyr_chat_set_topic(Purple
 
 	zt = find_sub_by_id(gc->proto_data,id);
 	/* find_sub_by_id can return NULL */
-	if (!zt) 
+	if (!zt)
 		return;
 	gconv = purple_find_conversation_with_account(PURPLE_CONV_TYPE_CHAT, zt->name,
 												gc->account);
@@ -2586,7 +2586,7 @@ static PurpleCmdRet zephyr_purple_cmd_ms
 	zephyr_account *zephyr = purple_conversation_get_gc(conv)->proto_data;
 	if (!g_ascii_strcasecmp(args[0],"*"))
 		return PURPLE_CMD_RET_FAILED;  /* "*" is not a valid argument */
-	else 
+	else
 		recipient = local_zephyr_normalize(zephyr,args[0]);
 
 	if (strlen(recipient) < 1)
@@ -2594,7 +2594,7 @@ static PurpleCmdRet zephyr_purple_cmd_ms
 
 	if (zephyr_send_message(zephyr,"MESSAGE","PERSONAL",recipient,args[1],zephyr_get_signature(),""))
 		return PURPLE_CMD_RET_OK;
-	else 
+	else
 		return PURPLE_CMD_RET_FAILED;
 }
 
@@ -2638,7 +2638,7 @@ static PurpleCmdRet zephyr_purple_cmd_zi
 	zephyr_account *zephyr = purple_conversation_get_gc(conv)->proto_data;
 	if ( zephyr_send_message(zephyr,"message",args[0],"",args[1],zephyr_get_signature(),""))
 		return PURPLE_CMD_RET_OK;
-	else 
+	else
 		return PURPLE_CMD_RET_FAILED;
 }
 
@@ -2649,7 +2649,7 @@ static PurpleCmdRet zephyr_purple_cmd_zc
 	zephyr_account *zephyr = purple_conversation_get_gc(conv)->proto_data;
 	if ( zephyr_send_message(zephyr,args[0],args[1],"",args[2],zephyr_get_signature(),""))
 		return PURPLE_CMD_RET_OK;
-	else 
+	else
 		return PURPLE_CMD_RET_FAILED;
 }
 
@@ -2658,7 +2658,7 @@ static PurpleCmdRet zephyr_purple_cmd_zc
 {
 	/* args = class, instance, recipient, message */
 	zephyr_account *zephyr = purple_conversation_get_gc(conv)->proto_data;
-	if ( zephyr_send_message(zephyr,args[0],args[1],args[2],args[3],zephyr_get_signature(),"")) 
+	if ( zephyr_send_message(zephyr,args[0],args[1],args[2],args[3],zephyr_get_signature(),""))
 		return PURPLE_CMD_RET_OK;
 	else
 		return PURPLE_CMD_RET_FAILED;
@@ -2669,7 +2669,7 @@ static PurpleCmdRet zephyr_purple_cmd_zi
 {
 	/* args = instance, recipient, message */
 	zephyr_account *zephyr = purple_conversation_get_gc(conv)->proto_data;
-	if ( zephyr_send_message(zephyr,"message",args[0],args[1],args[2],zephyr_get_signature(),"")) 
+	if ( zephyr_send_message(zephyr,"message",args[0],args[1],args[2],zephyr_get_signature(),""))
 		return PURPLE_CMD_RET_OK;
 	else
 		return PURPLE_CMD_RET_FAILED;
@@ -2680,7 +2680,7 @@ static PurpleCmdRet zephyr_purple_cmd_zc
 {
 	/* args = class, message */
 	zephyr_account *zephyr = purple_conversation_get_gc(conv)->proto_data;
-	if ( zephyr_send_message(zephyr,args[0],"PERSONAL","",args[1],zephyr_get_signature(),"")) 
+	if ( zephyr_send_message(zephyr,args[0],"PERSONAL","",args[1],zephyr_get_signature(),""))
 		return PURPLE_CMD_RET_OK;
 	else
 		return PURPLE_CMD_RET_FAILED;
@@ -2791,13 +2791,13 @@ static void zephyr_action_get_subs_from_
 	ZSubscription_t subs;
 	if (use_zeph02(zephyr)) {
 		GString* subout = g_string_new("Subscription list<br>");
-		
+
 		title = g_strdup_printf("Server subscriptions for %s", zephyr->username);
-		
+
 		if (zephyr->port == 0) {
 			purple_debug_error("zephyr", "error while retrieving port\n");
 			return;
-		} 
+		}
 		if ((retval = ZRetrieveSubscriptions(zephyr->port,&nsubs)) != ZERR_NONE) {
 			/* XXX better error handling */
 			purple_debug_error("zephyr", "error while retrieving subscriptions from server\n");
@@ -2969,13 +2969,13 @@ static void init_plugin(PurplePlugin * p
 
 	option = purple_account_option_bool_new(_("Import from .anyone"), "read_anyone", TRUE);
 	prpl_info.protocol_options = g_list_append(prpl_info.protocol_options, option);
- 
+
 	option = purple_account_option_bool_new(_("Import from .zephyr.subs"), "read_zsubs", TRUE);
 	prpl_info.protocol_options = g_list_append(prpl_info.protocol_options, option);
- 
+
 	option = purple_account_option_string_new(_("Realm"), "realm", "");
 	prpl_info.protocol_options = g_list_append(prpl_info.protocol_options, option);
-	
+
 	option = purple_account_option_string_new(_("Exposure"), "exposure_level", tmp?tmp: EXPOSE_REALMVIS);
 	prpl_info.protocol_options = g_list_append(prpl_info.protocol_options, option);
 
============================================================
--- libpurple/protocols/gg/gg.c	01181576d0b728b7d04706dca4bd3b9c543e41ab
+++ libpurple/protocols/gg/gg.c	c5f59b6862c12e6c792432c7f0650471eabed052
@@ -215,7 +215,7 @@ static void ggp_action_buddylist_put(Pur
 	char *buddylist = ggp_buddylist_dump(purple_connection_get_account(gc));
 
 	purple_debug_info("gg", "Uploading...\n");
-	
+
 	if (buddylist == NULL)
 		return;
 
@@ -1729,7 +1729,7 @@ static void ggp_async_login_handler(gpoi
 				gc->inpa = purple_input_add(info->session->fd,
 							  PURPLE_INPUT_READ,
 							  ggp_callback_recv, gc);
-				
+
 				ggp_buddylist_send(gc);
 				purple_connection_update_progress(gc, _("Connected"), 1, 2);
 				purple_connection_set_state(gc, PURPLE_CONNECTED);
@@ -1844,7 +1844,7 @@ static GList *ggp_status_types(PurpleAcc
 	types = g_list_append(types, type);
 
  	/*
-	 * New statuses for GG 8.0 like PoGGadaj ze mna (not yet because 
+	 * New statuses for GG 8.0 like PoGGadaj ze mna (not yet because
 	 * libpurple can't support Chatty status) and Nie przeszkadzac
 	 */
 	type = purple_status_type_new_with_attrs(
@@ -1852,7 +1852,7 @@ static GList *ggp_status_types(PurpleAcc
 			"message", _("Message"), purple_value_new(PURPLE_TYPE_STRING),
 			NULL);
 	types = g_list_append(types, type);
-	
+
 	/*
 	 * This status is necessary to display guys who are blocking *us*.
 	 */
@@ -1956,7 +1956,7 @@ static void ggp_login(PurpleAccount *acc
 
 	glp->encoding = GG_ENCODING_UTF8;
 	glp->protocol_features = (GG_FEATURE_STATUS80|GG_FEATURE_DND_FFC);
-	
+
 	glp->async = 1;
 	glp->status = ggp_to_gg_status(status, &glp->status_descr);
 	glp->tls = 0;
@@ -1984,7 +1984,7 @@ static void ggp_login(PurpleAccount *acc
 		purple_debug_info("gg", "Trying to retrieve address from gg appmsg service\n");
 
 	info->session = gg_login(glp);
-	purple_connection_update_progress(gc, _("Connecting"), 0, 2); 			
+	purple_connection_update_progress(gc, _("Connecting"), 0, 2);
 	if (info->session == NULL) {
 		purple_connection_error_reason (gc,
 			PURPLE_CONNECTION_ERROR_NETWORK_ERROR,
@@ -2131,7 +2131,7 @@ static int ggp_send_im(PurpleConnection 
 	tmp = charset_convert(plain, "UTF-8", "CP1250");
 	*/
 	tmp = g_strdup_printf("%s", plain);
-	
+
 	if (tmp && (format_length - sizeof(struct gg_msg_richtext))) {
 		if(gg_send_message_richtext(info->session, GG_CLASS_CHAT, ggp_str_to_uin(who), (unsigned char *)tmp, format, format_length) < 0) {
 			ret = -1;
============================================================
--- libpurple/protocols/zephyr/ZhmStat.c	b0dab3e4cfa98edfe8c73d72f5b73c3e96435214
+++ libpurple/protocols/zephyr/ZhmStat.c	da15de689c1668313422ac1cba7b2f6636de461c
@@ -5,7 +5,7 @@
  *
  *      Copyright (c) 1996 by the Massachusetts Institute of Technology.
  *      For copying and distribution information, see the file
- *      "mit-copyright.h". 
+ *      "mit-copyright.h".
  */
 
 #include "internal.h"
@@ -53,7 +53,7 @@ Code_t ZhmStat(hostaddr, notice)
     req.z_recipient = "";
     req.z_default_format = "";
     req.z_message_len = 0;
-	
+
     if ((code = ZSetDestAddr(&sin)) != ZERR_NONE)
 	return(code);
 
============================================================
--- libpurple/protocols/yahoo/libymsg.c	d8ad466c2c0ae5b738049a6ae6a6ccb34cd21ce2
+++ libpurple/protocols/yahoo/libymsg.c	2cc9f7b1c52fad23d852da2fc99d216120c90305
@@ -849,7 +849,7 @@ static void yahoo_process_notify(PurpleC
 
 		if (fed_from != from)
 			g_free(fed_from);
-	
+
 	} else if (!g_ascii_strncasecmp(msg, "GAME", strlen("GAME"))) {
 		PurpleBuddy *bud = purple_find_buddy(account, from);
 
@@ -1012,7 +1012,7 @@ static void yahoo_process_message(Purple
 						break;
 				}
 				purple_debug_info("yahoo", "Message from federated (%d) buddy %s.\n", im->fed, im->fed_from);
-					
+
 			}
 			/* peer session id */
 			if (im && (pair->key == 11)) {
@@ -1217,7 +1217,7 @@ yahoo_buddy_add_authorize_cb(gpointer da
 						  13, 1,
 						  334, 0);
 	}
-		
+
 	yahoo_packet_send_and_free(pkt, yd);
 
 	g_free(add_req->id);
@@ -1314,7 +1314,7 @@ static void yahoo_buddy_auth_req_15(Purp
 	PurpleAccount *account;
 	GSList *l = pkt->hash;
 	const char *msg = NULL;
-	
+
 	account = purple_connection_get_account(gc);
 
 	/* Buddy authorized/declined our addition */
@@ -1724,7 +1724,7 @@ static void yahoo_auth16_stage3(PurpleCo
 
 	purple_debug_info("yahoo", "yahoo status: %d\n", yd->current_status);
 	pkt = yahoo_packet_new(YAHOO_SERVICE_AUTHRESP, yd->current_status, yd->session_id);
-	
+
 	if(yd->cookie_b) { /* send B cookie if we have it */
 		yahoo_packet_hash(pkt, "ssssssssss",
 					1, name,
@@ -1795,7 +1795,7 @@ static void yahoo_auth16_stage2(PurpleUt
 	purple_debug_info("yahoo","Authentication: In yahoo_auth16_stage2\n");
 
 	yd->url_datas = g_slist_remove(yd->url_datas, url_data);
-	
+
 	if (error_message != NULL) {
 		purple_debug_error("yahoo", "Login Failed, unable to retrieve stage 2 url: %s\n", error_message);
 		purple_connection_error_reason(gc, PURPLE_CONNECTION_ERROR_NETWORK_ERROR, error_message);
@@ -1809,7 +1809,7 @@ static void yahoo_auth16_stage2(PurpleUt
 		int response_no = -1;
 		char *crumb = NULL;
 		char *crypt = NULL;
-		
+
 		if(g_strv_length(splits) > 1) {
 			yd->cookie_b = yahoo_auth16_get_cookie_b(splits[0]);
 			split_data = g_strsplit(splits[1], "\r\n", -1);
@@ -4701,7 +4701,7 @@ unsigned int yahoo_send_typing(PurpleCon
 			default:
 				break;
 		}
-		
+
 		yahoo_packet_hash(pkt, "ssssss", 49, "TYPING", 1, purple_connection_get_display_name(gc),
                   14, " ", 13, state == PURPLE_TYPING ? "1" : "0",
                   5, fed_who, 1002, "1");
@@ -5106,7 +5106,7 @@ void yahoo_rem_deny(PurpleConnection *gc
 		yahoo_packet_hash(pkt, "ssis", 1, purple_connection_get_display_name(gc), 7, who+4, 241, fed, 13, "2");
 	else
 		yahoo_packet_hash(pkt, "sss", 1, purple_connection_get_display_name(gc), 7, who, 13, "2");
-	
+
 	yahoo_packet_send_and_free(pkt, yd);
 }
 
============================================================
--- pidgin/plugins/ticker/ticker.c	73aedca768bbb561cf65eef99e28404c9cc32e55
+++ pidgin/plugins/ticker/ticker.c	139d729d2083d225477e5757d07d07ecd1990792
@@ -1,6 +1,6 @@
 /*
  * Purple Ticker Plugin
- * The line below doesn't apply at all, does it?  It should be Syd, Sean, and 
+ * The line below doesn't apply at all, does it?  It should be Syd, Sean, and
  * maybe Nathan, I believe.
  * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
  *
============================================================
--- libpurple/ft.c	25f2e7cdb8cac8635d2f2085f5c3216d9440613d
+++ libpurple/ft.c	2b8633b159e16099b858dd21ed122e9c3811a9d5
@@ -274,7 +274,7 @@ purple_xfer_set_status(PurpleXfer *xfer,
 	}
 }
 
-static void 
+static void
 purple_xfer_conversation_write_internal(PurpleXfer *xfer,
 	const char *message, gboolean is_error, gboolean print_thumbnail)
 {
@@ -302,12 +302,12 @@ purple_xfer_conversation_write_internal(
 
 	if (print_thumbnail && thumbnail_data) {
 		gchar *message_with_img;
-		gpointer data = g_memdup(thumbnail_data, size); 
+		gpointer data = g_memdup(thumbnail_data, size);
 		int id = purple_imgstore_add_with_id(data, size, NULL);
 
-		message_with_img = 
+		message_with_img =
 			g_strdup_printf("<img id='%d'> %s", id, escaped);
-		purple_conversation_write(conv, NULL, message_with_img, flags, 
+		purple_conversation_write(conv, NULL, message_with_img, flags,
 			time(NULL));
 		purple_imgstore_unref_by_id(id);
 		g_free(message_with_img);
@@ -530,7 +530,7 @@ purple_xfer_ask_recv(PurpleXfer *xfer)
 				xfer, G_CALLBACK(purple_xfer_choose_file),
 				G_CALLBACK(cancel_recv_cb));
 		}
-			
+
 		g_free(buf);
 	} else
 		purple_xfer_choose_file(xfer);
============================================================
--- libpurple/protocols/jabber/win32/posix.uname.c	ff42b6e5c8cc0aab6008d01da99e4c81b06dc456
+++ libpurple/protocols/jabber/win32/posix.uname.c	8a27a6a052455fd96041813242a1a78dd2e1f7ca
@@ -1,10 +1,10 @@
 /*
    posix.uname.c - version 1.1
-   Copyright (C) 1999, 2000 
+   Copyright (C) 1999, 2000
 	     Earnie Boyd and assigns
 
    Fills the utsname structure with the appropriate values.
-  
+
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU Lesser General Public License as published
    by the Free Software Foundation; either version 2.1, or (at your option)
@@ -131,7 +131,7 @@ jabber_win32_uname( struct utsname *uts 
       strcpy( uts->machine, "unknown" );
       break;
   }
-  
+
   sLength = sizeof ( uts->nodename ) - 1;
   GetComputerNameA( uts->nodename, &sLength );
   return 1;
============================================================
--- pidgin/gtkconv.c	63452f3d6c7d9fb9579c7cb6c4236572df78b472
+++ pidgin/gtkconv.c	0aa1483461a2917c9fba3b8f4d16d084aa18d136
@@ -1128,7 +1128,7 @@ menu_find_cb(gpointer data, guint action
 }
 
 #ifdef USE_VV
-static void 
+static void
 menu_initiate_media_call_cb(gpointer data, guint action, GtkWidget *widget)
 {
 	PidginWindow *win = (PidginWindow *)data;
@@ -1163,7 +1163,7 @@ menu_get_attention_cb(gpointer data, gui
 	PurpleConversation *conv = pidgin_conv_window_get_active_conversation(win);
 
 	if (purple_conversation_get_type(conv) == PURPLE_CONV_TYPE_IM) {
-		purple_prpl_send_attention(purple_conversation_get_gc(conv), 
+		purple_prpl_send_attention(purple_conversation_get_gc(conv),
 			purple_conversation_get_name(conv), 0);
 	}
 }
@@ -2232,7 +2232,7 @@ pidgin_conv_switch_active_conversation(P
 
 	purple_debug_info("gtkconv", "setting active conversation on toolbar %p\n",
 		conv);
-	gtk_imhtmltoolbar_switch_active_conversation(GTK_IMHTMLTOOLBAR(gtkconv->toolbar), 
+	gtk_imhtmltoolbar_switch_active_conversation(GTK_IMHTMLTOOLBAR(gtkconv->toolbar),
 		conv);
 
 	if (old_conv == conv)
@@ -3297,7 +3297,7 @@ regenerate_media_items(PidginWindow *win
 		gtk_widget_set_sensitive(win->video_call,
 				caps & PURPLE_MEDIA_CAPS_VIDEO
 				? TRUE : FALSE);
-		gtk_widget_set_sensitive(win->audio_video_call, 
+		gtk_widget_set_sensitive(win->audio_video_call,
 				caps & PURPLE_MEDIA_CAPS_AUDIO_VIDEO
 				? TRUE : FALSE);
 	} else if (purple_conversation_get_type(conv)
@@ -3310,7 +3310,7 @@ regenerate_media_items(PidginWindow *win
 		gtk_widget_set_sensitive(win->audio_call, FALSE);
 		gtk_widget_set_sensitive(win->video_call, FALSE);
 		gtk_widget_set_sensitive(win->audio_video_call, FALSE);
-	}							
+	}
 #endif
 }
 
@@ -3467,7 +3467,7 @@ setup_menubar(PidginWindow *win)
 		gtk_item_factory_get_widget(win->menu.item_factory,
 					    N_("/Conversation/Media/Audio\\/Video Call"));
 #endif
-	
+
 	/* --- */
 
 	win->menu.send_file =
@@ -6561,7 +6561,7 @@ gray_stuff_out(PidginConversation *gtkco
 			buttons |= GTK_IMHTML_CUSTOM_SMILEY;
 		else
 			buttons &= ~GTK_IMHTML_CUSTOM_SMILEY;
-		
+
 		gtk_imhtml_set_format_functions(GTK_IMHTML(gtkconv->entry), buttons);
 		if (account != NULL)
 			gtk_imhtmltoolbar_associate_smileys(GTK_IMHTMLTOOLBAR(gtkconv->toolbar), purple_account_get_protocol_id(account));
============================================================
--- pidgin/plugins/gestures/stroke-draw.c	b3160a797469a2ff940f2f77461a4da36e1f84c1
+++ pidgin/plugins/gestures/stroke-draw.c	de1f7eaeb012577c84e6ec8fa5b37a64b65489ae
@@ -111,7 +111,7 @@ gstroke_timeout (gpointer data)
 	return TRUE;
 }
 
-static void gstroke_cancel(GdkEvent *event) 
+static void gstroke_cancel(GdkEvent *event)
 {
 	last_mouse_position.invalid = TRUE;
 
@@ -145,7 +145,7 @@ process_event (GtkWidget *widget, GdkEve
 			 * clicked after the middle button is clicked (but possibly
 			 * not released)
 			 */
-			gstroke_cancel(event);	
+			gstroke_cancel(event);
 			original_widget = NULL;
 			break;
 		}
@@ -299,7 +299,7 @@ gstroke_execute (GtkWidget *widget, cons
 #if 0
   purple_debug(PURPLE_DEBUG_MISC, "gestures", "gstroke %s\n", name);
 #endif
-  
+
   if (hash_table)
     {
       struct gstroke_func_and_data *fd =
============================================================
--- pidgin/gtkft.c	2f4984b122e0afe34aafd7ec48684de8476fdc79
+++ pidgin/gtkft.c	167f182e5ad9347536e480909e5b966ab0aab5d2
@@ -1156,11 +1156,11 @@ pidgin_xfer_add_thumbnail(PurpleXfer *xf
 
 static void
 pidgin_xfer_add_thumbnail(PurpleXfer *xfer, const gchar *formats)
-{	
+{
 	purple_debug_info("ft", "creating thumbnail for transfer\n");
 
 	if (purple_xfer_get_size(xfer) <= PIDGIN_XFER_MAX_SIZE_IMAGE_THUMBNAIL) {
-		GdkPixbuf *thumbnail = 
+		GdkPixbuf *thumbnail =
 			gdk_pixbuf_new_from_file_at_size(
 				purple_xfer_get_local_filename(xfer), 128, 128, NULL);
 
@@ -1172,7 +1172,7 @@ pidgin_xfer_add_thumbnail(PurpleXfer *xf
 			char *option_values[2] = {NULL, NULL};
 			int i;
 			gchar *format = NULL;
-			
+
 			for (i = 0; formats_split[i]; i++) {
 				if (purple_strequal(formats_split[i], "jpeg")) {
 					purple_debug_info("ft", "creating JPEG thumbnail\n");
@@ -1197,11 +1197,11 @@ pidgin_xfer_add_thumbnail(PurpleXfer *xf
 				format = formats_split[0];
 			}
 
-			gdk_pixbuf_save_to_bufferv(thumbnail, &buffer, &size, format, 
+			gdk_pixbuf_save_to_bufferv(thumbnail, &buffer, &size, format,
 				option_keys, option_values, NULL);
 
 			if (buffer) {
-				gchar *mimetype = g_strdup_printf("image/%s", format);				
+				gchar *mimetype = g_strdup_printf("image/%s", format);
 				purple_debug_info("ft",
 				                  "created thumbnail of %" G_GSIZE_FORMAT " bytes\n",
 					size);
============================================================
--- libpurple/protocols/msn/msg.c	a3c0307d28dd10026e51f5c16bf992edefa4e4fb
+++ libpurple/protocols/msn/msg.c	4db2797c7ad63f34dd1c07492fec3062a81193fe
@@ -347,7 +347,7 @@ msn_message_gen_payload(MsnMessage *msg,
 	{
 		size_t siz;
 		char *body;
-		
+
 		body = msn_slpmsgpart_serialize(msg->part, &siz);
 
 		memcpy(n, body, siz);
@@ -639,7 +639,7 @@ msn_message_show_readable(MsnMessage *ms
 			{
 				int i;
 				int bin_len;
-				
+
 				if (msg->part->footer->value == P2P_APPID_SESSION)
 					bin_len = P2P_PACKET_HEADER_SIZE;
 				else
@@ -822,7 +822,7 @@ datacast_inform_user(MsnSwitchBoard *swb
 		chat = FALSE;
 
 	if (swboard->conv == NULL) {
-		if (chat) 
+		if (chat)
 			swboard->conv = purple_find_chat(account->gc, swboard->chat_id);
 		else {
 			swboard->conv = purple_find_conversation_with_account(PURPLE_CONV_TYPE_IM,
@@ -845,7 +845,7 @@ datacast_inform_user(MsnSwitchBoard *swb
 }
 
 /* TODO: Make these not be such duplicates of each other */
-static void 
+static void
 got_wink_cb(MsnSlpCall *slpcall, const guchar *data, gsize size)
 {
 	FILE *f = NULL;
@@ -871,7 +871,7 @@ got_wink_cb(MsnSlpCall *slpcall, const g
 	g_free(path);
 }
 
-static void 
+static void
 got_voiceclip_cb(MsnSlpCall *slpcall, const guchar *data, gsize size)
 {
 	FILE *f = NULL;
@@ -1133,7 +1133,7 @@ msn_invite_msg(MsnCmdProc *cmdproc, MsnM
 				"Unable to parse invite msg body.\n");
 		return;
 	}
-	
+
 	/*
 	 * GUID is NOT always present but Invitation-Command and Invitation-Cookie
 	 * are mandatory.
@@ -1150,7 +1150,7 @@ msn_invite_msg(MsnCmdProc *cmdproc, MsnM
 
 	} else if (!strcmp(command, "INVITE")) {
 		const gchar	*guid = g_hash_table_lookup(body, "Application-GUID");
-	
+
 		if (guid == NULL) {
 			purple_debug_warning("msn",
 			                     "Invite msg missing Application-GUID.\n");
@@ -1189,7 +1189,7 @@ msn_invite_msg(MsnCmdProc *cmdproc, MsnM
 			purple_debug_warning("msn", "Unhandled invite msg with GUID %s: %s.\n",
 			                     guid, application ? application : "(null)");
 		}
-		
+
 		if (!accepted) {
 			MsnSwitchBoard *swboard = cmdproc->data;
 			char *text;
============================================================
--- libpurple/protocols/msn/switchboard.c	f28d132cbe3afa91072390f217640c3fe31af14b
+++ libpurple/protocols/msn/switchboard.c	f6249e9ef0696ccef7894acd46d89801b64babf6
@@ -270,7 +270,7 @@ msn_switchboard_add_user(MsnSwitchBoard 
 		g_free(passport);
 		return;
 	}
-	
+
 	if (!msnuser) {
 		purple_debug_info("msn","User %s is not on our list.\n", passport);
 		msnuser = msn_user_new(userlist, passport, NULL);
@@ -831,7 +831,7 @@ msn_switchboard_show_ink(MsnSwitchBoard 
 
 	data += sizeof("base64:") - 1;
 	image_data = purple_base64_decode(data, &image_len);
-	if (!image_data || !image_len) 
+	if (!image_data || !image_len)
 	{
 		purple_debug_error("msn", "Unable to decode Ink from Base64 format.\n");
 		return;
============================================================
--- pidgin/gtkdebug.c	44f9c857e842c090328826ac042b3a7005e4aa62
+++ pidgin/gtkdebug.c	60f130088a75453cf7bfb2652abe3d6fae54be53
@@ -385,20 +385,20 @@ regex_match(DebugWindow *win, const gcha
 			gint m;
 			gint start_pos, end_pos;
 			GtkTextIter ms, me;
-			
+
 			if (!g_match_info_matches(match_info))
 				break;
-			
+
 			for (m = 0; m < g_match_info_get_match_count(match_info); m++)
 			{
 				if (m == 1)
 					continue;
-				
+
 				g_match_info_fetch_pos(match_info, m, &start_pos, &end_pos);
-				
+
 				if (end_pos == -1)
 					break;
-				
+
 				gtk_text_buffer_get_iter_at_offset(imhtml->text_buffer, &ms,
 													i + start_pos);
 				gtk_text_buffer_get_iter_at_offset(imhtml->text_buffer, &me,
@@ -407,7 +407,7 @@ regex_match(DebugWindow *win, const gcha
 												  &ms, &me);
 				offset = end_pos;
 			}
-			
+
 			g_match_info_free(match_info);
 			p += offset;
 			i += offset;
============================================================
--- pidgin/gtkblist.c	849ad4c8761af32a534733bd3124544c69978fd6
+++ pidgin/gtkblist.c	5d41aed9ca62bfc490a33dfcc4924bb2098149ee
@@ -968,7 +968,7 @@ make_blist_request_dialog(PidginBlistReq
 
 static GtkWidget *
 make_blist_request_dialog(PidginBlistRequestData *data, PurpleAccount *account,
-	const char *title, const char *window_role, const char *label_text, 
+	const char *title, const char *window_role, const char *label_text,
 	GCallback callback_func, PurpleFilterAccountFunc filter_func,
 	GCallback response_cb)
 {
@@ -1510,7 +1510,7 @@ pidgin_blist_make_buddy_menu(GtkWidget *
 	}
 	pidgin_new_item_from_stock(menu, _("I_M"), PIDGIN_STOCK_TOOLBAR_MESSAGE_NEW,
 			G_CALLBACK(gtk_blist_menu_im_cb), buddy, 0, 0, NULL);
-	
+
 #ifdef USE_VV
 	if (prpl_info && prpl_info->get_media_caps) {
 		PurpleAccount *account = purple_buddy_get_account(buddy);
@@ -1531,9 +1531,9 @@ pidgin_blist_make_buddy_menu(GtkWidget *
 				G_CALLBACK(gtk_blist_menu_video_call_cb), buddy, 0, 0, NULL);
 		}
 	}
-	
+
 #endif
-	
+
 	if (prpl_info && prpl_info->send_file) {
 		if (!prpl_info->can_receive_file ||
 			prpl_info->can_receive_file(buddy->account->gc, buddy->name))
@@ -3461,13 +3461,13 @@ edit_mood_cb(PurpleConnection *gc, Purpl
 		}
 	}
 }
-	
+
 static void
 global_moods_for_each(gpointer key, gpointer value, gpointer user_data)
 {
 	GList **out_moods = (GList **) user_data;
 	PurpleMood *mood = (PurpleMood *) value;
-	
+
 	*out_moods = g_list_append(*out_moods, mood);
 }
 
@@ -3483,7 +3483,7 @@ get_global_moods(void)
 	GList *out_moods = NULL;
 	int i = 0;
 	int num_accounts = 0;
-	
+
 	for (; accounts ; accounts = g_list_delete_link(accounts, accounts)) {
 		PurpleAccount *account = (PurpleAccount *) accounts->data;
 		if (purple_account_is_connected(account)) {
@@ -3519,7 +3519,7 @@ get_global_moods(void)
 
 	while (out_moods) {
 		PurpleMood *mood = (PurpleMood *) out_moods->data;
-		int in_num_accounts = 
+		int in_num_accounts =
 			GPOINTER_TO_INT(g_hash_table_lookup(mood_counts, mood->mood));
 
 		if (in_num_accounts == num_accounts) {
@@ -3544,7 +3544,7 @@ get_global_mood_status(void)
 {
 	GList *accounts = purple_accounts_get_all_active();
 	const gchar *found_mood = NULL;
-	
+
 	for (; accounts ; accounts = g_list_delete_link(accounts, accounts)) {
 		PurpleAccount *account = (PurpleAccount *) accounts->data;
 
@@ -3579,7 +3579,7 @@ set_mood_cb(GtkWidget *widget, PurpleAcc
 	PurplePluginProtocolInfo *prpl_info = NULL;
 	PurpleMood *mood;
 	PurpleMood *global_moods = get_global_moods();
-	
+
 	if (account) {
 		PurplePresence *presence = purple_account_get_presence(account);
 		PurpleStatus *status = purple_presence_get_status(presence, "mood");
@@ -3653,7 +3653,7 @@ static GtkItemFactoryEntry blist_menu[] 
  ***************************************************/
 static GtkItemFactoryEntry blist_menu[] =
 {
-/* NOTE: Do not set any accelerator to Control+O. It is mapped by 
+/* NOTE: Do not set any accelerator to Control+O. It is mapped by
    gtk_blist_key_press_cb to "Get User Info" on the selected buddy. */
 
 	/* Buddies menu */
@@ -4109,7 +4109,7 @@ pidgin_blist_get_emblem(PurpleBlistNode 
 
 		status = purple_presence_get_status(p, "mood");
 		name = purple_status_get_attr_string(status, PURPLE_MOOD_NAME);
-		
+
 		if (!(name && *name))
 			return NULL;
 
@@ -4419,7 +4419,7 @@ pidgin_blist_get_name_markup(PurpleBuddy
 		}
 	} else {
 		if (name_color) {
-			text = g_strdup_printf("<span font_desc='%s' color='%s'>%s</span>", 
+			text = g_strdup_printf("<span font_desc='%s' color='%s'>%s</span>",
 				name_font, name_color, nametext);
 		} else {
 			text = g_strdup_printf("<span font_desc='%s'>%s</span>", name_font,
@@ -6604,7 +6604,7 @@ static void buddy_node(PurpleBuddy *budd
 					ihrs, imin);
 			} else {
 				idle = g_strdup_printf("<span font_desc='%s'>%d:%02d</span>",
-					theme_font_get_face_default(pair, ""), 
+					theme_font_get_face_default(pair, ""),
 					ihrs, imin);
 			}
 		}
@@ -6709,7 +6709,7 @@ static void pidgin_blist_update_contact(
 				tmp = g_strdup_printf("<span font_desc='%s' color='%s'>%s</span>",
 						font, fg_color, mark);
 			} else {
-				tmp = g_strdup_printf("<span font_desc='%s'>%s</span>", font, 
+				tmp = g_strdup_printf("<span font_desc='%s'>%s</span>", font,
 					mark);
 			}
 			g_free(mark);
@@ -8155,7 +8155,7 @@ pidgin_blist_update_accounts_menu(void)
 		gc = purple_account_get_connection(account);
 		plugin = gc && PURPLE_CONNECTION_IS_CONNECTED(gc) ? gc->prpl : NULL;
 		prpl_info = plugin ? PURPLE_PLUGIN_PROTOCOL_INFO(plugin) : NULL;
-		
+
 		if (prpl_info &&
 		    (PURPLE_PROTOCOL_PLUGIN_HAS_FUNC(prpl_info, get_moods) ||
 			 PURPLE_PLUGIN_HAS_ACTIONS(plugin))) {
============================================================
--- libpurple/protocols/msn/error.c	cc580a3dda84559193c88eb2b1d898cc6b00417b
+++ libpurple/protocols/msn/error.c	37d7b0a9a226fd77b82b86f368af0d56c5878214
@@ -366,7 +366,7 @@ msn_error_sync_issue(MsnSession *session
 						  purple_account_get_protocol_name(account));
 
 	if (group_name != NULL)
-	{ 
+	{
 		reason = g_strdup_printf(_("%s on the local list is "
 								   "inside the group \"%s\" but not on "
 								   "the server list. "
@@ -374,7 +374,7 @@ msn_error_sync_issue(MsnSession *session
 								 passport, group_name);
 	}
 	else
-	{ 
+	{
 		reason = g_strdup_printf(_("%s is on the local list but "
 								   "not on the server list. "
 								   "Do you want this buddy to be added?"),
============================================================
--- libpurple/protocols/msn/notification.c	a819bceafa254cd01a65dcac180fd16dc79cf6f5
+++ libpurple/protocols/msn/notification.c	0c46e67fc3374006412c41ec0248c7fb3c41cf10
@@ -2216,7 +2216,7 @@ system_msg(MsnCmdProc *cmdproc, MsnMessa
 }
 
 /**************************************************************************
- * Dispatch server list management 
+ * Dispatch server list management
  **************************************************************************/
 typedef struct MsnAddRemoveListData {
 	MsnCmdProc *cmdproc;
============================================================
--- libpurple/protocols/msn/state.c	d161a79f1526fc4f61a1ecb22a33cef9145a7e7a
+++ libpurple/protocols/msn/state.c	294b7bf132bf79202fb85e10094e87891f7c43f8
@@ -223,7 +223,7 @@ msn_change_status(MsnSession *session)
 			} else if (strcmp(client_type, "bot") == 0) {
 				caps |= MSN_CLIENT_CAP_BOT;
 			}
-			/* MSN doesn't a "console" type... 
+			/* MSN doesn't a "console" type...
 			 What, they have no ncurses UI? :-) */
 		}
 	}
============================================================
--- pidgin/gtkprefs.c	ed8907772243531324fbac51bb8720dc2c96bc92
+++ pidgin/gtkprefs.c	f141f1c60f45904da1401916e3a4442e9a452cee
@@ -1045,7 +1045,7 @@ add_theme_prefs_combo(GtkWidget *vbox,
 add_theme_prefs_combo(GtkWidget *vbox,
                       GtkSizeGroup *combo_sg, GtkSizeGroup *label_sg,
                       GtkListStore *theme_store,
-                      GCallback combo_box_cb, gpointer combo_box_cb_user_data, 
+                      GCallback combo_box_cb, gpointer combo_box_cb_user_data,
                       const char *label_str, const char *prefs_path,
                       const char *theme_type)
 {
@@ -1098,7 +1098,7 @@ theme_page(void)
 	/* Buddy List Themes */
 	prefs_blist_themes_combo_box = add_theme_prefs_combo(
 		vbox, combo_sg, label_sg, prefs_blist_themes,
-		(GCallback)prefs_set_blist_theme_cb, NULL, 
+		(GCallback)prefs_set_blist_theme_cb, NULL,
 		_("Buddy List Theme:"), PIDGIN_PREFS_ROOT "/blist/theme", "blist");
 
 	/* Status Icon Themes */
@@ -1790,7 +1790,7 @@ network_page(void)
 
 	hbox = pidgin_add_widget_to_vbox(GTK_BOX(vbox), _("_TURN server:"),
 			sg, entry, TRUE, NULL);
-	
+
 	pidgin_prefs_labeled_spin_button(hbox, _("_UDP Port:"),
 		"/purple/network/turn_port", 0, 65535, NULL);
 
@@ -1938,7 +1938,7 @@ browser_page(void)
 		gtk_widget_show_all(ret);
 	} else {
 		sg = gtk_size_group_new(GTK_SIZE_GROUP_HORIZONTAL);
-	
+
 		browsers = get_available_browsers();
 		if (browsers != NULL) {
 			label = pidgin_prefs_dropdown_from_list(vbox,_("_Browser:"), PURPLE_PREF_STRING,
@@ -1947,7 +1947,7 @@ browser_page(void)
 			g_list_free(browsers);
 			gtk_misc_set_alignment(GTK_MISC(label), 0, 0.5);
 			gtk_size_group_add_widget(sg, label);
-	
+
 			hbox = gtk_hbox_new(FALSE, 0);
 			label = pidgin_prefs_dropdown(hbox, _("_Open link in:"), PURPLE_PREF_INT,
 				PIDGIN_PREFS_ROOT "/browsers/place",
@@ -1959,7 +1959,7 @@ browser_page(void)
 			gtk_misc_set_alignment(GTK_MISC(label), 0, 0.5);
 			gtk_size_group_add_widget(sg, label);
 			gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
-	
+
 			if (!strcmp(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/browsers/browser"), "custom"))
 				gtk_widget_set_sensitive(hbox, FALSE);
 			purple_prefs_connect_callback(prefs, PIDGIN_PREFS_ROOT "/browsers/browser",
@@ -1976,7 +1976,7 @@ browser_page(void)
 			gtk_widget_set_sensitive(hbox, FALSE);
 		purple_prefs_connect_callback(prefs, PIDGIN_PREFS_ROOT "/browsers/browser",
 				browser_changed2_cb, hbox);
-	
+
 		gtk_widget_show_all(ret);
 		g_object_unref(sg);
 	}
============================================================
--- libpurple/request.c	32d104a6995ee2720888325b60f12768708cf69c
+++ libpurple/request.c	cc2b05b46a40779cd9faa24fbffc8b9bfa2442ff
@@ -1317,10 +1317,10 @@ void *
 }
 
 void *
-purple_request_action_with_icon(void *handle, const char *title, 
+purple_request_action_with_icon(void *handle, const char *title,
 					const char *primary,
 					const char *secondary, int default_action,
-					PurpleAccount *account, const char *who, 
+					PurpleAccount *account, const char *who,
 					PurpleConversation *conv, gconstpointer icon_data,
 					gsize icon_size, void *user_data, size_t action_count, ...)
 {
@@ -1330,7 +1330,7 @@ purple_request_action_with_icon(void *ha
 	g_return_val_if_fail(action_count > 0, NULL);
 
 	va_start(args, action_count);
-	ui_handle = purple_request_action_with_icon_varg(handle, title, primary, 
+	ui_handle = purple_request_action_with_icon_varg(handle, title, primary,
 		secondary, default_action, account, who, conv, icon_data, icon_size,
 		user_data, action_count, args);
 	va_end(args);
@@ -1374,7 +1374,7 @@ purple_request_action_with_icon_varg(voi
 purple_request_action_with_icon_varg(void *handle, const char *title,
 						 const char *primary, const char *secondary,
 						 int default_action,
-						 PurpleAccount *account, const char *who, 
+						 PurpleAccount *account, const char *who,
 						 PurpleConversation *conv, gconstpointer icon_data,
 						 gsize icon_size,
 						 void *user_data, size_t action_count, va_list actions)
============================================================
--- pidgin/gtkrequest.c	a9887e1b5e4bb986ce308a7baac482eb4d207826
+++ pidgin/gtkrequest.c	945e7982e0ecd0b4bcc431598e7ce36084f1b369
@@ -595,7 +595,7 @@ pidgin_request_action_with_icon(const ch
 static void *
 pidgin_request_action_with_icon(const char *title, const char *primary,
 						const char *secondary, int default_action,
-					    PurpleAccount *account, const char *who, 
+					    PurpleAccount *account, const char *who,
 						PurpleConversation *conv, gconstpointer icon_data,
 						gsize icon_size,
 						void *user_data, size_t action_count, va_list actions)
@@ -693,7 +693,7 @@ pidgin_request_action_with_icon(const ch
 		gdk_pixbuf_loader_close(loader, NULL);
 		g_object_unref(loader);
 	}
-	
+
 	if (!img) {
 		img = gtk_image_new_from_stock(PIDGIN_STOCK_DIALOG_QUESTION,
 				       gtk_icon_size_from_name(PIDGIN_ICON_SIZE_TANGO_HUGE));
============================================================
--- pidgin/gtkaccount.c	60bda1f3229092fe59a44e13213502f693e01077
+++ pidgin/gtkaccount.c	d0eabdf276bd851ed12fd31de7c9cdcc9cb27456
@@ -2500,7 +2500,7 @@ pidgin_accounts_request_authorization(Pu
 
 
 	prpl_icon = pidgin_create_prpl_icon(account, PIDGIN_PRPL_ICON_SMALL);
-	
+
 	aa = g_new0(struct auth_request, 1);
 	aa->auth_cb = auth_cb;
 	aa->deny_cb = deny_cb;
@@ -2509,14 +2509,14 @@ pidgin_accounts_request_authorization(Pu
 	aa->alias = g_strdup(alias);
 	aa->account = account;
 	aa->add_buddy_after_auth = !on_list;
-	
+
 	alert = pidgin_make_mini_dialog_with_custom_icon(
 		gc, prpl_icon,
 		_("Authorize buddy?"), buffer, aa,
 		_("Authorize"), authorize_and_add_cb,
 		_("Deny"), deny_no_add_cb,
 		NULL);
-	
+
 	g_signal_connect_swapped(G_OBJECT(alert), "destroy", G_CALLBACK(free_auth_request), aa);
 	g_signal_connect(G_OBJECT(alert), "destroy", G_CALLBACK(purple_account_request_close), NULL);
 	pidgin_blist_add_alert(alert);
============================================================
--- pidgin/gtksound.c	10327a09932767eefc929652298735ff6fe85661
+++ pidgin/gtksound.c	b8de9a25c429dd4eb3fedbe500d4d86b004409b3
@@ -221,7 +221,7 @@ static void
 }
 
 static void
-got_attention_cb(PurpleAccount *account, const char *who, 
+got_attention_cb(PurpleAccount *account, const char *who,
 	PurpleConversation *conv, guint type, PurpleSoundEventID event)
 {
 	play_conv_event(conv, event);
@@ -362,7 +362,7 @@ pidgin_sound_init(void)
 						  GINT_TO_POINTER(PURPLE_SOUND_GOT_ATTENTION));
 	/* for the time being, don't handle sent-attention here, since playing a
 	 sound would result induplicate sounds. And fixing that would require changing the
-	 conversation signal for msg-recv */	
+	 conversation signal for msg-recv */
 }
 
 static void
============================================================
--- pidgin/win32/gtkdocklet-win32.c	213e4be77706db1d5d0897c7033f1ed1f8585122
+++ pidgin/win32/gtkdocklet-win32.c	90dc5490dd65237ab87545950534d168b20f2e99
@@ -539,7 +539,7 @@ static void winpidgin_tray_update_icon(P
 			icon_name = PIDGIN_STOCK_TRAY_PENDING;
 		if (connecting)
 			icon_name = PIDGIN_STOCK_TRAY_CONNECT;
-	
+
 		g_return_if_fail(icon_name != NULL);
 
 		cached_icons[icon_index] = load_hicon_from_stock(icon_name);
@@ -558,7 +558,7 @@ static void winpidgin_tray_set_tooltip(g
 	wchar_t *w;
 	if (value == NULL) {
 		value = PIDGIN_NAME;
-	}	
+	}
 	w = g_utf8_to_utf16(value, -1, NULL, NULL, NULL);
 	wcsncpy(_nicon_data.szTip, w, sizeof(_nicon_data.szTip) / sizeof(wchar_t));
 	g_free(w);
============================================================
--- libpurple/protocols/irc/cmds.c	2f4a5c0f076a40bcb288fb79c0f01a006a76910b
+++ libpurple/protocols/irc/cmds.c	6e9293a2315f5361d9534e0ce9aa833ecf3a32af
@@ -73,7 +73,7 @@ int irc_cmd_ctcp(struct irc_conn *irc, c
 	/* we have defined args as args[0] is target and args[1] is ctcp command */
 	char *buf;
 	GString *string;
-	
+
 	/* check if we have args */
 	if (!args || !args[0] || !args[1])
 		return 0;
@@ -89,7 +89,7 @@ int irc_cmd_ctcp(struct irc_conn *irc, c
 
 	irc_send(irc, buf);
 	g_free(buf);
-	
+
 	return 1;
 }
 
@@ -600,7 +600,7 @@ int irc_cmd_whowas(struct irc_conn *irc,
 		return 0;
 
 	buf = irc_format(irc, "vn", "WHOWAS", args[0]);
-	
+
 	irc->whois.nick = g_strdup(args[0]);
 	irc_send(irc, buf);
 	g_free(buf);
============================================================
--- libpurple/protocols/irc/msgs.c	0cd2a14587598f755b2ab7b88f5f532c3512b6d6
+++ libpurple/protocols/irc/msgs.c	b5f39963e57607dc76e1fc35371acaeb0bd1f72f
@@ -334,12 +334,12 @@ void irc_msg_endwhois(struct irc_conn *i
 	PurpleNotifyUserInfo *user_info;
 
 	if (!irc->whois.nick) {
-		purple_debug(PURPLE_DEBUG_WARNING, "irc", "Unexpected End of %s for %s\n", !strcmp(name, "369") ? "WHOWAS" : "WHOIS" 
+		purple_debug(PURPLE_DEBUG_WARNING, "irc", "Unexpected End of %s for %s\n", !strcmp(name, "369") ? "WHOWAS" : "WHOIS"
 											     , args[1]);
 		return;
 	}
 	if (purple_utf8_strcasecmp(irc->whois.nick, args[1])) {
-		purple_debug(PURPLE_DEBUG_WARNING, "irc", "Received end of %s for %s, expecting %s\n", !strcmp(name, "369") ? "WHOWAS" : "WHOIS" 
+		purple_debug(PURPLE_DEBUG_WARNING, "irc", "Received end of %s for %s, expecting %s\n", !strcmp(name, "369") ? "WHOWAS" : "WHOIS"
 													 , args[1], irc->whois.nick);
 		return;
 	}
@@ -610,10 +610,10 @@ void irc_msg_motd(struct irc_conn *irc, 
 	} else if (!strcmp(name, "422")) {
 		/* in case there is no 251, and no MOTD set, finalize the connection.
 		 * (and clear the motd for good measure). */
-		
+
 		if (irc->motd)
 			g_string_free(irc->motd, TRUE);
-		
+
 		irc_connected(irc, args[0]);
 		return;
 	}
============================================================
--- libpurple/protocols/irc/parse.c	6b8993e4cc2b77b8e65973ac62fff5fcc60c64c5
+++ libpurple/protocols/irc/parse.c	bef80be622ee6689a6c7cc26d8022584cfcfaa3d
@@ -657,7 +657,7 @@ void irc_parse_msg(struct irc_conn *irc,
 	 * instead of a null terminated string.
 	 */
 	purple_signal_emit(_irc_plugin, "irc-receiving-text", gc, &input);
-	
+
 	if (!strncmp(input, "PING ", 5)) {
 		msg = irc_format(irc, "vv", "PONG", input + 5);
 		irc_send(irc, msg);
============================================================
--- libpurple/protocols/yahoo/util.c	7b9c1626608fe9bbf60ed857f242bc2b7fd0f3f7
+++ libpurple/protocols/yahoo/util.c	f8b28029aa4f0ff84c9b09af3801de7d849d27b8
@@ -39,7 +39,7 @@ yahoo_account_use_http_proxy(PurpleConne
 	PurpleProxyInfo *ppi = NULL;
 	PurpleProxyType type = PURPLE_PROXY_NONE;
 	gboolean proxy_ssl = purple_account_get_bool(account, "proxy_ssl", FALSE);
-	
+
 	if(proxy_ssl)
 		ppi = purple_proxy_get_setup(account);
 	else
============================================================
--- libpurple/plugins/tcl/tcl_cmds.c	87a48eacd2f667248f6d052716b93c7bba5fb539
+++ libpurple/plugins/tcl/tcl_cmds.c	5d493cf77398e177afbd7409338d3eb172cb6b7a
@@ -4,7 +4,7 @@
  * purple
  *
  * Copyright (C) 2003 Ethan Blanton <eblanton at cs.purdue.edu>
- * 
+ *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
  * the Free Software Foundation; either version 2 of the License, or
@@ -184,7 +184,7 @@ int tcl_cmd_account(ClientData unused, T
 		if ((account = tcl_validate_account(objv[2], interp)) == NULL)
 			return TCL_ERROR;
 		if (objc == 3) {
-			Tcl_SetObjResult(interp, 
+			Tcl_SetObjResult(interp,
 					 Tcl_NewBooleanObj(
 						 purple_account_get_enabled(account,
 									    purple_core_get_ui())));
@@ -209,7 +209,7 @@ int tcl_cmd_account(ClientData unused, T
 			Tcl_WrongNumArgs(interp, 2, objv, "");
 			return TCL_ERROR;
 		}
-		Tcl_SetObjResult(interp, 
+		Tcl_SetObjResult(interp,
 				 purple_tcl_ref_new(PurpleTclRefHandle,
 						    purple_accounts_get_handle()));
 		break;
@@ -374,7 +374,7 @@ int tcl_cmd_account(ClientData unused, T
 		}
 		if ((account = tcl_validate_account(objv[2], interp)) == NULL)
 			return TCL_ERROR;
-		Tcl_SetObjResult(interp, 
+		Tcl_SetObjResult(interp,
 				 Tcl_NewStringObj((char *)purple_account_get_username(account), -1));
 		break;
 	}
@@ -865,7 +865,7 @@ int tcl_cmd_conversation(ClientData unus
 			return error;
 		from = Tcl_GetString(objv[4]);
 		what = Tcl_GetString(objv[5]);
-		
+
 		switch (style) {
 		case CMD_CONV_WRITE_SEND:
 			flags = PURPLE_MESSAGE_SEND;
@@ -1426,7 +1426,7 @@ int tcl_cmd_savedstatus(ClientData unuse
 			Tcl_WrongNumArgs(interp, 2, objv, "");
 			return TCL_ERROR;
 		}
-		Tcl_SetObjResult(interp, 
+		Tcl_SetObjResult(interp,
 				 purple_tcl_ref_new(PurpleTclRefHandle,
 						    purple_savedstatuses_get_handle()));
 		break;
@@ -1809,7 +1809,7 @@ int tcl_cmd_unload(ClientData unused, Tc
 		/* This isn't exactly OK, but heh.  What do you do? */
 		return TCL_OK;
 	}
-	/* We can't unload immediately, but we can unload at the first 
+	/* We can't unload immediately, but we can unload at the first
 	 * known safe opportunity. */
 	purple_timeout_add(0, unload_self, (gpointer)plugin);
 
============================================================
--- libpurple/plugins/tcl/tcl_glib.c	ab68c02015cd21f058506c5fc4eab82b0a3ba3a3
+++ libpurple/plugins/tcl/tcl_glib.c	fc501c7c141fd1b03d7f0fdfda01937db15ef12f
@@ -43,7 +43,7 @@
 
 /*
  * NOTES
- * 
+ *
  * This file was developed for the Purple project.  It inserts the Tcl
  * event loop into the glib2 event loop for the purposes of providing
  * Tcl bindings in a glib2 (e.g. Gtk2) program.  To use it, simply
@@ -51,9 +51,9 @@
  * function tcl_glib_init() before creating or using any Tcl
  * interpreters.  Then go ahead and use Tcl, Tk, whatever to your
  * heart's content.
- * 
+ *
  * BUGS
- * 
+ *
  * tcl_wait_for_event seems to have a bug that makes vwait not work so
  * well...  I'm not sure why, yet, but I haven't put much time into
  * it.  Hopefully I will figure it out soon.  In the meantime, this
@@ -159,7 +159,7 @@ static void tcl_create_file_handler(int 
 
 	if (g_hash_table_lookup(tcl_file_handlers, GINT_TO_POINTER(fd)))
             tcl_delete_file_handler(fd);
-	
+
 	if (mask & TCL_READABLE)
 		cond |= G_IO_IN;
 	if (mask & TCL_WRITABLE)
============================================================
--- libpurple/plugins/tcl/tcl_signals.c	063914419b890e12b2f7d9fbcba7c1c01c87e55a
+++ libpurple/plugins/tcl/tcl_signals.c	35c2b78eec9e14c1aa94c1baee307def79459d06
@@ -4,7 +4,7 @@
  * purple
  *
  * Copyright (C) 2003 Ethan Blanton <eblanton at cs.purdue.edu>
- * 
+ *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
  * the Free Software Foundation; either version 2 of the License, or
@@ -117,7 +117,7 @@ void tcl_signal_disconnect(void *instanc
 
 	for (cur = tcl_callbacks; cur != NULL; cur = g_list_next(cur)) {
 		handler = cur->data;
-		if (handler->interp == interp && handler->instance == instance 
+		if (handler->interp == interp && handler->instance == instance
 		    && !strcmp(signal, Tcl_GetString(handler->signal))) {
 			purple_signal_disconnect(instance, signal, handler->interp,
 					       PURPLE_CALLBACK(tcl_signal_callback));
============================================================
--- libpurple/protocols/yahoo/yahoochat.c	6d9b388512012554c254c6e8e4ab40d0c0ee7902
+++ libpurple/protocols/yahoo/yahoochat.c	6d85b7b10ce44ee13d49c1d93d536b9a4a713314
@@ -253,7 +253,7 @@ void yahoo_process_conference_decline(Pu
 
 			tmp = g_strdup_printf(_("%s has declined to join."), who);
 			purple_conversation_write(c, NULL, tmp, PURPLE_MESSAGE_SYSTEM | PURPLE_MESSAGE_NO_LINKIFY, time(NULL));
-			
+
 			g_free(tmp);
 		}
 
============================================================
--- libpurple/protocols/jabber/buddy.c	906cce601502d4504fa7a8d3280ca54ee3bbd51d
+++ libpurple/protocols/jabber/buddy.c	1d6e8a5d88423ff0fedac9908a871a51b0059e2e
@@ -2305,17 +2305,17 @@ jabber_resource_get_identity_category_ty
 	const gchar *category)
 {
 	const GList *iter = NULL;
-	
+
 	if (jbr->caps.info) {
 		for (iter = jbr->caps.info->identities ; iter ; iter = g_list_next(iter)) {
-			const JabberIdentity *identity = 
+			const JabberIdentity *identity =
 				(JabberIdentity *) iter->data;
-		
+
 			if (strcmp(identity->category, category) == 0) {
 				return identity->type;
 			}
 		}
 	}
-		
+
 	return NULL;
 }
============================================================
--- libpurple/protocols/jabber/message.c	73e4c304234c557314ceb6fcec024b009629139a
+++ libpurple/protocols/jabber/message.c	24f730ba8a9c788d667c2f2d76106686e1dedd5f
@@ -945,7 +945,7 @@ jabber_message_smileyfy_xhtml(JabberMess
 			const GList *iterator;
 			GList *valid_smileys = NULL;
 			gboolean has_too_large_smiley = FALSE;
-			
+
 			for (iterator = found_smileys; iterator ;
 				iterator = g_list_next(iterator)) {
 				PurpleSmiley *smiley = (PurpleSmiley *) iterator->data;
@@ -976,7 +976,7 @@ jabber_message_smileyfy_xhtml(JabberMess
 							"(too large, max is %d)\n",
 							purple_smiley_get_shortcut(smiley),
 							JABBER_DATA_MAX_SIZE);
-				}				
+				}
 			}
 
 			if (has_too_large_smiley) {
@@ -1244,7 +1244,7 @@ unsigned int jabber_send_typing(PurpleCo
 	JabberMessage *jm;
 	JabberBuddy *jb;
 	JabberBuddyResource *jbr;
-	char *resource;	
+	char *resource;
 
 	js = purple_connection_get_protocol_data(gc);
 	jb = jabber_buddy_find(js, who, TRUE);
============================================================
--- libpurple/protocols/jabber/parser.c	6bcb99c396566a1e765112777bd8961e088bb2af
+++ libpurple/protocols/jabber/parser.c	3e583281ad12eae1efe37e6296357dcabb9b0edf
@@ -109,7 +109,7 @@ jabber_parser_element_start_libxml(void 
 			js->stream_id = g_strdup("");
 			purple_debug_info("jabber", "Server failed to specify a stream "
 			                  "ID (underspecified in rfc3920, but intended "
-			                  "to be a MUST; digest legacy auth may fail.\n"); 
+			                  "to be a MUST; digest legacy auth may fail.\n");
 #endif
 		}
 	} else {
============================================================
--- libpurple/plugins/ssl/ssl-nss.c	597c2bbce306ae80b44d37ab424960355f80e9db
+++ libpurple/plugins/ssl/ssl-nss.c	124c474174cbde7da43e375e4ffa1f47950ab95b
@@ -289,13 +289,13 @@ ssl_nss_get_peer_certificates(PRFileDesc
 	GList * peer_certs = NULL;
 	int count;
 	int64 now = PR_Now();
-	
+
 	curcert = SSL_PeerCertificate(socket);
 	if (curcert == NULL) {
 		purple_debug_error("nss", "could not DupCertificate\n");
 		return NULL;
 	}
-	
+
 	for (count = 0 ; count < CERT_MAX_CERT_CHAIN ; count++) {
 		purple_debug_info("nss", "subject=%s issuer=%s\n", curcert->subjectName,
 						  curcert->issuerName  ? curcert->issuerName : "(null)");
@@ -530,8 +530,8 @@ ssl_nss_peer_certs(PurpleSslConnection *
 		CERT_DestroyCertificate(cert);
 #endif
 
-	
 
+
 	return NULL;
 }
 
@@ -587,7 +587,7 @@ x509_import_from_file(const gchar *filen
 	crt = g_new0(PurpleCertificate, 1);
 	crt->scheme = &x509_nss;
 	crt->data = crt_dat;
-	
+
 	return crt;
 }
 
@@ -672,7 +672,7 @@ x509_export_certificate(const gchar *fil
 
 	purple_debug_info("nss/x509",
 			  "Exporting certificate to %s\n", filename);
-	
+
 	/* First, use NSS voodoo to create a DER-formatted certificate */
 	dercrt = SEC_ASN1EncodeItem(NULL, NULL, crt_dat,
 				    SEC_ASN1_GET(SEC_SignedCertificateTemplate));
@@ -692,7 +692,7 @@ x509_export_certificate(const gchar *fil
 	ret =  purple_util_write_data_to_file_absolute(filename, pemcrt, -1);
 
 	g_free(pemcrt);
-	
+
 	return ret;
 }
 
@@ -713,7 +713,7 @@ x509_copy_certificate(PurpleCertificate 
 	newcrt->scheme = &x509_nss;
 	/* NSS does refcounting automatically */
 	newcrt->data = CERT_DupCertificate(crt_dat);
-	
+
 	return newcrt;
 }
 
@@ -759,7 +759,7 @@ x509_signed_by(PurpleCertificate * crt,
 	CERTCertificate *subjectCert;
 	CERTCertificate *issuerCert;
 	SECStatus st;
-	
+
 	issuerCert = X509_NSS_DATA(issuer);
 	g_return_val_if_fail(issuerCert, FALSE);
 
@@ -795,7 +795,7 @@ x509_sha1sum(PurpleCertificate *crt)
 	sha1sum = g_byte_array_sized_new(hashlen);
 	/* glib leaves the size as 0 by default */
 	sha1sum->len = hashlen;
-	
+
 	st = PK11_HashBuf(SEC_OID_SHA1, sha1sum->data,
 			  derCert->data, derCert->len);
 
@@ -814,7 +814,7 @@ x509_dn (PurpleCertificate *crt)
 x509_dn (PurpleCertificate *crt)
 {
 	CERTCertificate *crt_dat;
-	
+
 	g_return_val_if_fail(crt, NULL);
 	g_return_val_if_fail(crt->scheme == &x509_nss, NULL);
 
@@ -828,7 +828,7 @@ x509_issuer_dn (PurpleCertificate *crt)
 x509_issuer_dn (PurpleCertificate *crt)
 {
 	CERTCertificate *crt_dat;
-	
+
 	g_return_val_if_fail(crt, NULL);
 	g_return_val_if_fail(crt->scheme == &x509_nss, NULL);
 
@@ -844,7 +844,7 @@ x509_common_name (PurpleCertificate *crt
 	CERTCertificate *crt_dat;
 	char *nss_cn;
 	gchar *ret_cn;
-	
+
 	g_return_val_if_fail(crt, NULL);
 	g_return_val_if_fail(crt->scheme == &x509_nss, NULL);
 
@@ -875,7 +875,7 @@ x509_check_name (PurpleCertificate *crt,
 {
 	CERTCertificate *crt_dat;
 	SECStatus st;
-	
+
 	g_return_val_if_fail(crt, FALSE);
 	g_return_val_if_fail(crt->scheme == &x509_nss, FALSE);
 
@@ -890,7 +890,7 @@ x509_check_name (PurpleCertificate *crt,
 	else if (st == SECFailure) {
 		return FALSE;
 	}
-	
+
 	/* If we get here...bad things! */
 	purple_debug_error("nss/x509",
 			   "x509_check_name fell through where it shouldn't "
@@ -903,7 +903,7 @@ x509_times (PurpleCertificate *crt, time
 {
 	CERTCertificate *crt_dat;
 	PRTime nss_activ, nss_expir;
-	
+
 	g_return_val_if_fail(crt, FALSE);
 	g_return_val_if_fail(crt->scheme == &x509_nss, FALSE);
 
@@ -926,7 +926,7 @@ x509_times (PurpleCertificate *crt, time
 	if (expiration) {
 		*expiration = nss_expir / 1000000;
 	}
-	
+
 	return TRUE;
 }
 
============================================================
--- libpurple/protocols/jabber/si.c	f5b31a44291578f676f621a8c54834e7abf6c30f
+++ libpurple/protocols/jabber/si.c	c10dc71bba886325a006980438c437350d1035d1
@@ -858,7 +858,7 @@ jabber_si_xfer_bytestreams_listen_cb(int
 			purple_network_get_all_local_system_ips();
 		const char *public_ip;
 		gboolean has_public_ip = FALSE;
-		
+
 		jsx->local_streamhost_fd = sock;
 
 		jid = g_strdup_printf("%s@%s/%s", jsx->js->user->node,
@@ -1238,7 +1238,7 @@ static void jabber_si_xfer_send_request(
 	purple_xfer_prepare_thumbnail(xfer, "jpeg,png");
 #endif
 	xfer->filename = g_path_get_basename(xfer->local_filename);
-	
+
 	iq = jabber_iq_new(jsx->js, JABBER_IQ_SET);
 	xmlnode_set_attrib(iq->node, "to", xfer->who);
 	si = xmlnode_new_child(iq->node, "si");
@@ -1263,14 +1263,14 @@ static void jabber_si_xfer_send_request(
 				mimetype, TRUE, jsx->js);
 		xmlnode *thumbnail = xmlnode_new_child(file, "thumbnail");
 		xmlnode_set_namespace(thumbnail, NS_THUMBS);
-		xmlnode_set_attrib(thumbnail, "cid", 
+		xmlnode_set_attrib(thumbnail, "cid",
 			jabber_data_get_cid(thumbnail_data));
 		xmlnode_set_attrib(thumbnail, "mime-type", mimetype);
 		/* cache data */
 		jabber_data_associate_local(thumbnail_data, NULL);
 	}
 #endif
-						  
+
 	feature = xmlnode_new_child(si, "feature");
 	xmlnode_set_namespace(feature, "http://jabber.org/protocol/feature-neg");
 	x = xmlnode_new_child(feature, "x");
@@ -1505,7 +1505,7 @@ static void jabber_si_xfer_init(PurpleXf
 		JabberBuddyResource *jbr = NULL;
 		char *resource;
 		GList *resources = NULL;
-		
+
 		if(NULL != (resource = jabber_get_resource(xfer->who))) {
 			/* they've specified a resource, no need to ask or
 			 * default or anything, just do it */
@@ -1531,7 +1531,7 @@ static void jabber_si_xfer_init(PurpleXf
 				}
 			}
 		}
-		
+
 		if (!resources) {
 			/* no resources online, we're trying to send to someone
 			 * whose presence we're not subscribed to, or
@@ -1560,7 +1560,7 @@ static void jabber_si_xfer_init(PurpleXf
 			PurpleRequestFields *fields = purple_request_fields_new();
 			PurpleRequestField *field = purple_request_field_choice_new("resource", _("Resource"), 0);
 			PurpleRequestFieldGroup *group = purple_request_field_group_new(NULL);
-			
+
 			for(l = resources; l; l = l->next) {
 				jbr = l->data;
 				purple_request_field_choice_add(field, jbr->name);
@@ -1763,7 +1763,7 @@ void jabber_si_parse(JabberStream *js, c
 	purple_xfer_set_request_denied_fnc(xfer, jabber_si_xfer_request_denied);
 	purple_xfer_set_cancel_recv_fnc(xfer, jabber_si_xfer_cancel_recv);
 	purple_xfer_set_end_fnc(xfer, jabber_si_xfer_end);
-				   
+
 	js->file_transfers = g_list_append(js->file_transfers, xfer);
 
 #if ENABLE_FT_THUMBNAILS
============================================================
--- pidgin/plugins/relnot.c	4a3ec15609012ab1af1754114999fe0cc80d2bc4
+++ pidgin/plugins/relnot.c	721651f0674f820ed1bdf96794187eabfc449b89
@@ -133,7 +133,7 @@ do_check(void)
 	if(!last_check || time(NULL) - last_check > MIN_CHECK_INTERVAL) {
 		gchar *url, *request;
 		const char *host = "pidgin.im";
-		
+
 		url = g_strdup_printf("http://%s/version.php?version=%s&build=%s",
 				host,
 				purple_core_get_version(),
============================================================
--- libpurple/network.c	d334af276edca3df1776b42495f7a3981f3c7056
+++ libpurple/network.c	d2307574aa2975179b237e414c6823cd2fbbb134
@@ -271,7 +271,7 @@ purple_network_get_all_local_system_ips(
 
 			inet_ntop(AF_INET, &sinptr->sin_addr, dst,
 				sizeof(dst));
-			purple_debug_info("network", 
+			purple_debug_info("network",
 				"found local i/f with address %s on IPv4\n", dst);
 			if (!purple_strequal(dst, "127.0.0.1")) {
 				result = g_list_append(result, g_strdup(dst));
@@ -873,7 +873,7 @@ nm_update_state(NMState state)
 				purple_prefs_get_string("/purple/network/stun_server"));
 			purple_network_set_turn_server(
 				purple_prefs_get_string("/purple/network/turn_server"));
-			
+
 			if (ui_ops != NULL && ui_ops->network_connected != NULL)
 				ui_ops->network_connected();
 			break;
@@ -936,10 +936,10 @@ static void
 #endif
 
 static void
-purple_network_ip_lookup_cb(GSList *hosts, gpointer data, 
+purple_network_ip_lookup_cb(GSList *hosts, gpointer data,
 	const char *error_message)
 {
-	const gchar **ip = (const gchar **) data; 
+	const gchar **ip = (const gchar **) data;
 
 	if (error_message) {
 		purple_debug_error("network", "lookup of IP address failed: %s\n",
@@ -949,14 +949,14 @@ purple_network_ip_lookup_cb(GSList *host
 	}
 
 	if (hosts && g_slist_next(hosts)) {
-		struct sockaddr *addr = g_slist_next(hosts)->data; 
+		struct sockaddr *addr = g_slist_next(hosts)->data;
 		char dst[INET6_ADDRSTRLEN];
-		
+
 		if (addr->sa_family == AF_INET6) {
-			inet_ntop(addr->sa_family, &((struct sockaddr_in6 *) addr)->sin6_addr, 
+			inet_ntop(addr->sa_family, &((struct sockaddr_in6 *) addr)->sin6_addr,
 				dst, sizeof(dst));
 		} else {
-			inet_ntop(addr->sa_family, &((struct sockaddr_in *) addr)->sin_addr, 
+			inet_ntop(addr->sa_family, &((struct sockaddr_in *) addr)->sin_addr,
 				dst, sizeof(dst));
 		}
 
@@ -981,7 +981,7 @@ purple_network_set_stun_server(const gch
 			purple_dnsquery_a(stun_server, 3478, purple_network_ip_lookup_cb,
 				&stun_ip);
 		} else {
-			purple_debug_info("network", 
+			purple_debug_info("network",
 				"network is unavailable, don't try to update STUN IP");
 		}
 	} else if (stun_ip) {
@@ -996,11 +996,11 @@ purple_network_set_turn_server(const gch
 	if (turn_server && turn_server[0] != '\0') {
 		if (purple_network_is_available()) {
 			purple_debug_info("network", "running DNS query for TURN server\n");
-			purple_dnsquery_a(turn_server, 
-				purple_prefs_get_int("/purple/network/turn_port"), 
+			purple_dnsquery_a(turn_server,
+				purple_prefs_get_int("/purple/network/turn_port"),
 				purple_network_ip_lookup_cb, &turn_ip);
 		} else {
-			purple_debug_info("network", 
+			purple_debug_info("network",
 				"network is unavailable, don't try to update TURN IP");
 		}
 	} else if (turn_ip) {
============================================================
--- libpurple/protocols/jabber/disco.c	7967894da8a9664f2e3a75d8e8cc2708d0619a32
+++ libpurple/protocols/jabber/disco.c	309a0a06612e494844b8585d5dff34f0af281692
@@ -480,10 +480,10 @@ jabber_disco_stun_srv_resolve_cb(PurpleS
 	js->srv_query_data = NULL;
 
 	if (results > 0) {
-		purple_debug_info("jabber", "looking up IP for %s:%d\n", 
+		purple_debug_info("jabber", "looking up IP for %s:%d\n",
 			resp[0].hostname, resp[0].port);
-		js->stun_query = 
-			purple_dnsquery_a(resp[0].hostname, resp[0].port, 
+		js->stun_query =
+			purple_dnsquery_a(resp[0].hostname, resp[0].port,
 				jabber_disco_stun_lookup_cb, js);
 	}
 }
@@ -547,7 +547,7 @@ jabber_disco_server_info_result_cb(Jabbe
 			}
 		} else if (purple_network_get_stun_ip() == NULL ||
 		    purple_strequal(purple_network_get_stun_ip(), "")) {
-			js->srv_query_data = 
+			js->srv_query_data =
 				purple_srv_resolve("stun", "udp", js->user->domain,
 					jabber_disco_stun_srv_resolve_cb, js);
 			/* TODO: add TURN support later... */
============================================================
--- pidgin/gtkimhtmltoolbar.c	d92ccbb3d9c76c46df9d646431a1bd5ff7b71fac
+++ pidgin/gtkimhtmltoolbar.c	d4c57d3f6191f8b2f1f3fead86db7c42b332d409
@@ -1590,11 +1590,11 @@ void gtk_imhtmltoolbar_switch_active_con
 		g_object_get_data(G_OBJECT(toolbar), "attention");
 
 	g_object_set_data(G_OBJECT(toolbar), "active_conv", conv);
-	
+
 	/* gray out attention button on protocols that don't support it
 	 for the time being it is always disabled for chats */
 	gtk_widget_set_sensitive(attention,
-		conv && prpl && purple_conversation_get_type(conv) == PURPLE_CONV_TYPE_IM && 
+		conv && prpl && purple_conversation_get_type(conv) == PURPLE_CONV_TYPE_IM &&
 		PURPLE_PLUGIN_PROTOCOL_INFO(prpl)->send_attention != NULL);
 }
 
============================================================
--- libpurple/protocols/irc/dcc_send.c	a074899e6b9ed2971fa318d714dfae9b3365a4df
+++ libpurple/protocols/irc/dcc_send.c	bd2b2fbcd89eba1bb4c59a83e3a9c9dde80fc47d
@@ -129,14 +129,14 @@ void irc_dccsend_recv(struct irc_conn *i
 		purple_debug(PURPLE_DEBUG_INFO, "irc", "Receiving file (%s) from %s\n",
 			     filename->str, xd->ip);
 		purple_xfer_set_size(xfer, token[i+2] ? atoi(token[i+2]) : 0);
-		
+
 		purple_xfer_set_init_fnc(xfer, irc_dccsend_recv_init);
 		purple_xfer_set_ack_fnc(xfer, irc_dccsend_recv_ack);
-		
+
 		purple_xfer_set_end_fnc(xfer, irc_dccsend_recv_destroy);
 		purple_xfer_set_request_denied_fnc(xfer, irc_dccsend_recv_destroy);
 		purple_xfer_set_cancel_recv_fnc(xfer, irc_dccsend_recv_destroy);
-		
+
 		purple_xfer_request(xfer);
 	}
 	g_strfreev(token);
============================================================
--- libpurple/protocols/novell/novell.c	acf5c86796a0220d71bea93c603df67d31c9be84
+++ libpurple/protocols/novell/novell.c	46b975252b9b401ffc2ef95d123fc95b3a60f448
@@ -678,7 +678,7 @@ _join_conf_resp_cb(NMUser * user, NMERR_
 				ur = nm_conference_get_participant(conference, i);
 				if (ur) {
 					name = nm_user_record_get_display_id(ur);
-					purple_conv_chat_add_user(PURPLE_CONV_CHAT(chat), name, NULL, 
+					purple_conv_chat_add_user(PURPLE_CONV_CHAT(chat), name, NULL,
 											PURPLE_CBFLAGS_NONE, TRUE);
 				}
 			}
@@ -1544,7 +1544,7 @@ _show_info(PurpleConnection * gc, NMUser
 		}
 	}
 
-	purple_notify_userinfo(gc, nm_user_record_get_userid(user_record), 
+	purple_notify_userinfo(gc, nm_user_record_get_userid(user_record),
 						 user_info, NULL, NULL);
 	purple_notify_user_info_destroy(user_info);
 }
@@ -1965,7 +1965,7 @@ _evt_conference_joined(NMUser * user, NM
 					nm_conference_set_data(conference, (gpointer) chat);
 
 					name = nm_user_record_get_display_id(ur);
-					purple_conv_chat_add_user(PURPLE_CONV_CHAT(chat), name, NULL, 
+					purple_conv_chat_add_user(PURPLE_CONV_CHAT(chat), name, NULL,
 											PURPLE_CBFLAGS_NONE, TRUE);
 
 				}
@@ -1977,7 +1977,7 @@ _evt_conference_joined(NMUser * user, NM
 			if (ur) {
 				name = nm_user_record_get_display_id(ur);
 				if (!purple_conv_chat_find_user(PURPLE_CONV_CHAT(chat), name)) {
-					purple_conv_chat_add_user(PURPLE_CONV_CHAT(chat), name, NULL, 
+					purple_conv_chat_add_user(PURPLE_CONV_CHAT(chat), name, NULL,
 											PURPLE_CBFLAGS_NONE, TRUE);
 				}
 			}
@@ -2860,7 +2860,7 @@ novell_tooltip_text(PurpleBuddy * buddy,
 			}
 
 			purple_notify_user_info_add_pair(user_info, _("Status"), status_str);
-			
+
 			if (text)
 				purple_notify_user_info_add_pair(user_info, _("Message"), text);
 		}
============================================================
--- libpurple/protocols/silc/silc.c	7d6870429118aaf4deed6e1916b2ec60d369b688
+++ libpurple/protocols/silc/silc.c	9bbc478a0189b9d191487227518ae3bac61990f5
@@ -678,12 +678,12 @@ silcpurple_close(PurpleConnection *gc)
 	g_return_if_fail(sg != NULL);
 
 	ui_info = purple_core_get_ui_info();
-	
+
 	if(ui_info) {
 		ui_name = g_hash_table_lookup(ui_info, "name");
 		ui_website = g_hash_table_lookup(ui_info, "website");
 	}
-	
+
 	if(!ui_name || !ui_website) {
 		ui_name = "Pidgin";
 		ui_website = PURPLE_WEBSITE;
@@ -1845,7 +1845,7 @@ static PurpleCmdRet silcpurple_cmd_quit(
 	GHashTable *ui_info;
 	const char *ui_name = NULL, *ui_website = NULL;
 	char *quit_msg;
-								   
+
 	gc = purple_conversation_get_gc(conv);
 
 	if (gc == NULL)
@@ -1857,12 +1857,12 @@ static PurpleCmdRet silcpurple_cmd_quit(
 		return PURPLE_CMD_RET_FAILED;
 
 	ui_info = purple_core_get_ui_info();
-	
+
 	if(ui_info) {
 		ui_name = g_hash_table_lookup(ui_info, "name");
 		ui_website = g_hash_table_lookup(ui_info, "website");
 	}
-	
+
 	if(!ui_name || !ui_website) {
 		ui_name = "Pidgin";
 		ui_website = PURPLE_WEBSITE;
============================================================
--- libpurple/protocols/msn/directconn.c	32286b5d07e593f2c5b6044c121f7a8b1c37c25c
+++ libpurple/protocols/msn/directconn.c	eaf77bfcfdae39a3a7d86c4a1b6c9d88ae3d55f3
@@ -678,7 +678,7 @@ msn_dc_recv_cb(gpointer data, gint fd, P
 
 		if (dc->state != DC_STATE_FOO && packet_length >= P2P_PACKET_HEADER_SIZE) {
 			MsnP2PHeader *context;
-			
+
 			/* Skip packet size */
 			context = msn_p2p_header_from_wire(dc->in_buffer + 4);
 			memcpy(&dc->header, context, P2P_PACKET_HEADER_SIZE);
============================================================
--- libpurple/protocols/msn/slpmsg.c	4460cae842dfca65bbd6a9d801e570e4641e40c0
+++ libpurple/protocols/msn/slpmsg.c	75b675898bf8e1f61ec01d25a76aeaaedf597e98
@@ -43,7 +43,7 @@ msn_slpmsg_new(MsnSlpLink *slplink)
 	if (purple_debug_is_verbose())
 		purple_debug_info("msn", "slpmsg new (%p)\n", slpmsg);
 
-	if (slplink) 
+	if (slplink)
 		msn_slpmsg_set_slplink(slpmsg, slplink);
 	else
 		slpmsg->slplink = NULL;
============================================================
--- libpurple/protocols/yahoo/yahoo_friend.c	d2845c0572ba943f7b7c9d9e82c9cd1138fe4748
+++ libpurple/protocols/yahoo/yahoo_friend.c	647746bd3f6dd25f368d44ebca8e14fea66c9ee1
@@ -152,7 +152,7 @@ void yahoo_process_presence(PurpleConnec
 	char *who = NULL;
 	int value = 0;
 	YahooFederation fed = YAHOO_FEDERATION_NONE;
-	
+
 	while (l) {
 		struct yahoo_pair *pair = l->data;
 
@@ -175,7 +175,7 @@ void yahoo_process_presence(PurpleConnec
 		purple_debug_error("yahoo", "Received unknown value for presence key: %d\n", value);
 		return;
 	}
-	
+
 	switch (fed) {
 		case YAHOO_FEDERATION_MSN:
 			who = g_strconcat("msn/", temp, NULL);
@@ -238,12 +238,12 @@ void yahoo_friend_update_presence(Purple
 	f = yahoo_friend_find(gc, name);
 	if (!f)
 		return;
-	
+
 	if(f->fed != YAHOO_FEDERATION_NONE)
 		temp = name+4;
 	else
 		temp = name;
-    
+
 	/* No need to change the value if it is already correct */
 	if (f->presence == presence) {
 		purple_debug_info("yahoo", "Not setting presence because there are no changes.\n");
============================================================
--- pidgin/gtkthemes.c	ffa9442384081a7ef5f81ebbbb6898c64ce44c46
+++ pidgin/gtkthemes.c	6e5954a00bd142e33ed6f5d42877f7735ee381a9
@@ -270,7 +270,7 @@ void pidgin_themes_load_smiley_theme(con
 			if (len == 0)
 				continue;
 		}
-		
+
 		i = buf;
 		while (isspace(*i))
 			i++;
============================================================
--- libpurple/protocols/sametime/sametime.c	600c368c9621bb7d077a7b997faaf5c416f63d8d
+++ libpurple/protocols/sametime/sametime.c	8bddb7b05001ed174c77a8f499c5a063c46ac9d4
@@ -317,12 +317,12 @@ static struct mwSession *gc_to_session(P
 /** resolves a mwSession from a PurpleConnection */
 static struct mwSession *gc_to_session(PurpleConnection *gc) {
   struct mwPurplePluginData *pd;
-  
+
   g_return_val_if_fail(gc != NULL, NULL);
-  
+
   pd = gc->proto_data;
   g_return_val_if_fail(pd != NULL, NULL);
-  
+
   return pd->session;
 }
 
@@ -355,7 +355,7 @@ static void write_cb(gpointer data, gint
 
   while(avail) {
     ret = write(pd->socket, circ->outptr, avail);
-    
+
     if(ret <= 0)
       break;
 
@@ -438,7 +438,7 @@ static void mw_session_io_close(struct m
   g_return_if_fail(pd != NULL);
 
   gc = pd->gc;
-  
+
   if(pd->outpa) {
     purple_input_remove(pd->outpa);
     pd->outpa = 0;
@@ -448,7 +448,7 @@ static void mw_session_io_close(struct m
     close(pd->socket);
     pd->socket = 0;
   }
-  
+
   if(gc->inpa) {
     purple_input_remove(gc->inpa);
     gc->inpa = 0;
@@ -489,7 +489,7 @@ static void mw_aware_list_on_aware(struc
 
   PurpleConnection *gc;
   PurpleAccount *acct;
-    
+
   struct mwPurplePluginData *pd;
   guint32 idle;
   guint stat;
@@ -507,7 +507,7 @@ static void mw_aware_list_on_aware(struc
   if(idle) {
     guint32 idle_len;       /*< how long a client has been idle */
     guint32 ugly_idle_len;  /*< how long a broken client has been idle */
-    
+
     DEBUG_INFO("%s has idle value 0x%x\n", NSTR(id), idle);
 
     idle_len = time(NULL) - idle;
@@ -518,7 +518,7 @@ static void mw_aware_list_on_aware(struc
 	else
 		ugly_idle_len = (ugly_idle_len - idle) / 1000;
 
-    /* 
+    /*
        what's the deal here? Well, good clients are smart enough to
        publish their idle time by using an attribute to indicate that
        they went idle at some time UTC, in seconds since epoch. Bad
@@ -554,16 +554,16 @@ static void mw_aware_list_on_aware(struc
   case mwStatus_IDLE:
     if(! idle) idle = -1;
     break;
-    
+
   case mwStatus_AWAY:
     status = MW_STATE_AWAY;
     break;
-    
+
   case mwStatus_BUSY:
     status = MW_STATE_BUSY;
     break;
   }
-  
+
   /* NAB group members */
   if(aware->group) {
     PurpleGroup *group;
@@ -593,7 +593,7 @@ static void mw_aware_list_on_aware(struc
 
     purple_blist_node_set_int(bnode, BUDDY_KEY_TYPE, mwSametimeUser_NORMAL);
   }
-  
+
   if(aware->online) {
     purple_prpl_got_user_status(acct, id, status, NULL);
     purple_prpl_got_user_idle(acct, id, !!idle, (time_t) idle);
@@ -628,17 +628,17 @@ list_ensure(struct mwPurplePluginData *p
     returns that list. */
 static struct mwAwareList *
 list_ensure(struct mwPurplePluginData *pd, PurpleGroup *group) {
-  
+
   struct mwAwareList *list;
-  
+
   g_return_val_if_fail(pd != NULL, NULL);
   g_return_val_if_fail(group != NULL, NULL);
-  
+
   list = g_hash_table_lookup(pd->group_list_map, group);
   if(! list) {
     list = mwAwareList_new(pd->srvc_aware, &mw_aware_list_handler);
     mwAwareList_setClientData(list, pd->gc, NULL);
-    
+
     mwAwareList_watchAttributes(list,
 				mwAttribute_AV_PREFS_SET,
 				mwAttribute_MICROPHONE,
@@ -650,7 +650,7 @@ list_ensure(struct mwPurplePluginData *p
     g_hash_table_replace(pd->group_list_map, group, list);
     g_hash_table_insert(pd->group_list_map, list, group);
   }
-  
+
   return list;
 }
 
@@ -689,7 +689,7 @@ static void blist_export(PurpleConnectio
     /* if it's a normal group with none of our people in it, skip it */
     if(gtype == mwSametimeGroup_NORMAL && !purple_group_on_account(grp, acct))
       continue;
-    
+
     /* if the group has an owner and we're not it, skip it */
     owner = purple_blist_node_get_string(gn, GROUP_KEY_OWNER);
     if(owner && strcmp(owner, purple_account_get_username(acct)))
@@ -740,7 +740,7 @@ static void blist_export(PurpleConnectio
 	}
       }
     }
-  }  
+  }
 }
 
 
@@ -842,7 +842,7 @@ static void buddy_add(struct mwPurplePlu
 
   blist_schedule(pd);
 
-  g_list_free(add);  
+  g_list_free(add);
 }
 
 
@@ -866,11 +866,11 @@ static PurpleBuddy *buddy_ensure(PurpleC
   buddy = purple_find_buddy_in_group(acct, id, group);
   if(! buddy) {
     buddy = purple_buddy_new(acct, id, alias);
-  
+
     purple_blist_add_buddy(buddy, NULL, group, NULL);
     buddy_add(pd, buddy);
   }
-  
+
   purple_blist_alias_buddy(buddy, alias);
   purple_blist_server_alias_buddy(buddy, name);
   purple_blist_node_set_string((PurpleBlistNode *) buddy, BUDDY_KEY_NAME, name);
@@ -888,7 +888,7 @@ static void group_add(struct mwPurplePlu
   struct mwAwareList *list;
   const char *n;
   GList *add;
-  
+
   n = purple_blist_node_get_string((PurpleBlistNode *) group, GROUP_KEY_NAME);
   if(! n) n = purple_group_get_name(group);
 
@@ -965,7 +965,7 @@ static PurpleGroup *group_ensure(PurpleC
     purple_blist_node_set_string(gn, GROUP_KEY_OWNER, owner);
     group_add(gc->proto_data, group);
   }
-  
+
   return group;
 }
 
@@ -1025,7 +1025,7 @@ static void group_clear(PurpleGroup *gro
       PurpleBuddy *gb = (PurpleBuddy *) bn;
 
       if(! PURPLE_BLIST_NODE_IS_BUDDY(bn)) continue;
-      
+
       if(purple_buddy_get_account(gb) == acct) {
 	DEBUG_INFO("clearing %s from group\n", NSTR(purple_buddy_get_name(gb)));
 	prune = g_list_prepend(prune, gb);
@@ -1057,7 +1057,7 @@ static void group_prune(PurpleConnection
 
   PurpleAccount *acct;
   PurpleBlistNode *gn, *cn, *bn;
-  
+
   GHashTable *stusers;
   GList *prune = NULL;
   GList *ul, *utl;
@@ -1070,7 +1070,7 @@ static void group_prune(PurpleConnection
   g_return_if_fail(acct != NULL);
 
   stusers = g_hash_table_new(g_str_hash, g_str_equal);
-  
+
   /* build a hash table for quick lookup while pruning the group
      contents */
   utl = mwSametimeGroup_getUsers(stgroup);
@@ -1205,7 +1205,7 @@ static void blist_sync(PurpleConnection 
 	 of our members in it, so don't fully delete it */
       del = FALSE;
     }
-    
+
     group_clear(g_prune->data, acct, del);
     g_prune = g_list_delete_link(g_prune, g_prune);
   }
@@ -1280,7 +1280,7 @@ static void conversation_created_cb(Purp
   conv = mwServiceIm_getConversation(pd->srvc_im, &who);
 
   convo_features(conv);
-    
+
   if(mwConversation_isClosed(conv))
     mwConversation_open(conv);
 }
@@ -1391,7 +1391,7 @@ static void blist_init(PurpleAccount *ac
       }
     }
   }
-  
+
   if(add_buds) {
     purple_account_add_buddies(acct, add_buds);
     g_list_free(add_buds);
@@ -1412,7 +1412,7 @@ static void services_starting(struct mwP
 
   /* grab the buddy list from the server */
   unit = mwStorageUnit_new(mwStore_AWARE_LIST);
-  mwServiceStorage_load(pd->srvc_store, unit, fetch_blist_cb, pd, NULL); 
+  mwServiceStorage_load(pd->srvc_store, unit, fetch_blist_cb, pd, NULL);
 
   /* find all the NAB groups and subscribe to them */
   for(l = purple_blist_get_root(); l;
@@ -1492,7 +1492,7 @@ static void session_started(struct mwPur
   acct = purple_connection_get_account(pd->gc);
   status = purple_account_get_active_status(acct);
   mw_prpl_set_status(acct, status);
-  
+
   /* start watching for new conversations */
   purple_signal_connect(purple_conversations_get_handle(),
 		      "conversation-created", pd,
@@ -1502,7 +1502,7 @@ static void session_started(struct mwPur
   purple_signal_connect(purple_blist_get_handle(),
 		      "blist-node-extended-menu", pd,
 		      PURPLE_CALLBACK(blist_node_menu_cb), pd);
-  
+
   /* use our services to do neat things */
   services_starting(pd);
 }
@@ -1733,7 +1733,7 @@ static void read_cb(gpointer data, gint 
   int ret = 0, err = 0;
 
   g_return_if_fail(pd != NULL);
- 
+
   ret = read_recv(pd->session, pd->socket);
 
   /* normal operation ends here */
@@ -1826,7 +1826,7 @@ static void mw_session_announce(struct m
   PurpleBuddy *buddy;
   char *who = from->user_id;
   char *msg;
-  
+
   pd = mwSession_getClientData(s);
   acct = purple_connection_get_account(pd->gc);
   conv = purple_find_conversation_with_account(PURPLE_CONV_TYPE_IM, who, acct);
@@ -1886,7 +1886,7 @@ static void mw_conf_invited(struct mwCon
 static void mw_conf_invited(struct mwConference *conf,
 			    struct mwLoginInfo *inviter,
 			    const char *invitation) {
-  
+
   struct mwServiceConference *srvc;
   struct mwSession *session;
   struct mwPurplePluginData *pd;
@@ -1943,7 +1943,7 @@ conf_find_by_id(struct mwPurplePluginDat
   struct mwServiceConference *srvc = pd->srvc_conf;
   struct mwConference *conf = NULL;
   GList *l, *ll;
-  
+
   ll = mwServiceConference_getConferences(srvc);
   for(l = ll; l; l = l->next) {
     struct mwConference *c = l->data;
@@ -1955,7 +1955,7 @@ conf_find_by_id(struct mwPurplePluginDat
     }
   }
   g_list_free(ll);
-  
+
   return conf;
 }
 
@@ -2042,7 +2042,7 @@ static void mw_conf_peer_parted(struct m
 
 static void mw_conf_peer_parted(struct mwConference *conf,
 				struct mwLoginInfo *peer) {
-  
+
   struct mwServiceConference *srvc;
   struct mwSession *session;
   struct mwPurplePluginData *pd;
@@ -2067,7 +2067,7 @@ static void mw_conf_text(struct mwConfer
 
 static void mw_conf_text(struct mwConference *conf,
 			 struct mwLoginInfo *who, const char *text) {
-  
+
   struct mwServiceConference *srvc;
   struct mwSession *session;
   struct mwPurplePluginData *pd;
@@ -2141,7 +2141,7 @@ static void ft_incoming_init(PurpleXfer 
 
 static void ft_incoming_init(PurpleXfer *xfer) {
   /* incoming transfer accepted */
-  
+
   /* - accept the mwFileTransfer
      - open/create the local FILE "wb"
      - stick the FILE's fp in xfer->dest_fp
@@ -2222,7 +2222,7 @@ static void ft_send(struct mwFileTransfe
 
   rem = mwFileTransfer_getRemaining(ft);
   if(rem < MW_FT_LEN) o.len = rem;
-  
+
   if(fread(buf, (size_t) o.len, 1, fp)) {
 
     /* calculate progress and display it */
@@ -2261,7 +2261,7 @@ static void mw_ft_opened(struct mwFileTr
   if(purple_xfer_get_type(xfer) == PURPLE_XFER_SEND) {
     xfer->dest_fp = g_fopen(xfer->local_filename, "rb");
     ft_send(ft, xfer->dest_fp);
-  }  
+  }
 }
 
 
@@ -2454,7 +2454,7 @@ static void convo_queue(struct mwConvers
     m->data = g_strdup(data);
     m->clear = g_free;
     break;
-    
+
   case mwImSend_TYPING:
   default:
     m->data = (gpointer) data;
@@ -2470,22 +2470,22 @@ static void convo_error(struct mwConvers
   PurpleConversation *gconv;
   char *tmp, *text;
   struct mwIdBlock *idb;
-  
+
   idb = mwConversation_getTarget(conv);
-  
+
   tmp = mwError(err);
   text = g_strconcat(_("Unable to send message: "), tmp, NULL);
-  
+
   gconv = convo_get_gconv(conv);
   if(gconv && !purple_conv_present_error(idb->user, gconv->account, text)) {
-    
+
     g_free(text);
     text = g_strdup_printf(_("Unable to send message to %s:"),
 			   (idb->user)? idb->user: "(unknown)");
     purple_notify_error(purple_account_get_connection(gconv->account),
 		      NULL, text, tmp);
   }
-  
+
   g_free(tmp);
   g_free(text);
 }
@@ -2494,7 +2494,7 @@ static void convo_queue_send(struct mwCo
 static void convo_queue_send(struct mwConversation *conv) {
   struct convo_data *cd;
   GList *l;
-  
+
   cd = mwConversation_getClientData(conv);
 
   for(l = cd->queue; l; l = g_list_delete_link(l, l)) {
@@ -2580,7 +2580,7 @@ static void mw_conversation_opened(struc
   cd = mwConversation_getClientData(conv);
   if(cd) {
     convo_queue_send(conv);
-  
+
     if(! convo_get_gconv(conv)) {
       mwConversation_free(conv);
       return;
@@ -2594,7 +2594,7 @@ static void mw_conversation_opened(struc
     PurpleBuddy *buddy;
     struct mwLoginInfo *info;
     info = mwConversation_getTargetInfo(conv);
-    
+
     buddy = purple_find_buddy(acct, info->user_id);
     if(buddy) {
       purple_blist_node_set_int((PurpleBlistNode *) buddy,
@@ -2741,7 +2741,7 @@ static void im_recv_mime(struct mwConver
 
   /* don't want the contained string to ever be NULL */
   str = g_string_new("");
-  
+
   doc = purple_mime_document_parse(data);
 
   /* handle all the MIME parts */
@@ -2755,7 +2755,7 @@ static void im_recv_mime(struct mwConver
 
     if(! type) {
       ; /* feh */
-      
+
     } else if(purple_str_has_prefix(type, "image")) {
       /* put images into the image store */
 
@@ -2766,7 +2766,7 @@ static void im_recv_mime(struct mwConver
 
       /* obtain and unencode the data */
       purple_mime_part_get_data_decoded(part, &d_dat, &d_len);
-      
+
       /* look up the content id */
       cid = (char *) purple_mime_part_get_field(part, "Content-ID");
       cid = make_cid(cid);
@@ -2779,7 +2779,7 @@ static void im_recv_mime(struct mwConver
 
       /* recall the image for dereferencing later */
       images = g_list_append(images, GINT_TO_POINTER(img));
-      
+
     } else if(purple_str_has_prefix(type, "text")) {
 
       /* concatenate all the text parts together */
@@ -2790,7 +2790,7 @@ static void im_recv_mime(struct mwConver
       g_string_append(str, (const char *)data);
       g_free(data);
     }
-  }  
+  }
 
   purple_mime_document_free(doc);
 
@@ -2839,7 +2839,7 @@ static void im_recv_mime(struct mwConver
   im_recv_html(conv, pd, str->str);
 
   g_string_free(str, TRUE);
-  
+
   /* clean up the cid table */
   g_hash_table_destroy(img_by_cid);
 
@@ -2905,7 +2905,7 @@ static void mw_place_invite(struct mwCon
   pd = mwSession_getClientData(session);
 
   idb = mwConversation_getTarget(conv);
-  
+
   ht = g_hash_table_new_full(g_str_hash, g_str_equal, NULL, g_free);
   g_hash_table_insert(ht, CHAT_KEY_CREATOR, g_strdup(idb->user));
   g_hash_table_insert(ht, CHAT_KEY_NAME, g_strdup(name));
@@ -3246,7 +3246,7 @@ static const char* mw_prpl_list_emblem(P
 
 static const char* mw_prpl_list_emblem(PurpleBuddy *b)
 {
-  if(buddy_is_external(b)) 
+  if(buddy_is_external(b))
     return "external";
 
   return NULL;
@@ -3292,22 +3292,22 @@ static char *user_supports_text(struct m
 static char *user_supports_text(struct mwServiceAware *srvc, const char *who) {
   const char *feat[] = {NULL, NULL, NULL, NULL, NULL};
   const char **f = feat;
-  
+
   if(user_supports(srvc, who, mwAttribute_AV_PREFS_SET)) {
     gboolean mic, speak, video;
-    
+
     mic = user_supports(srvc, who, mwAttribute_MICROPHONE);
     speak = user_supports(srvc, who, mwAttribute_SPEAKERS);
     video = user_supports(srvc, who, mwAttribute_VIDEO_CAMERA);
-    
+
     if(mic) *f++ = _("Microphone");
     if(speak) *f++ = _("Speakers");
     if(video) *f++ = _("Video Camera");
   }
-  
+
   if(user_supports(srvc, who, mwAttribute_FILE_TRANSFER))
     *f++ = _("File Transfer");
-  
+
   return (*feat)? g_strjoinv(", ", (char **)feat): NULL;
   /* jenni loves siege */
 }
@@ -3431,7 +3431,7 @@ static void blist_menu_conf_create(Purpl
   const char *msgA;
   const char *msgB;
   char *msg1;
-  
+
   g_return_if_fail(buddy != NULL);
 
   acct = purple_buddy_get_account(buddy);
@@ -3439,18 +3439,18 @@ static void blist_menu_conf_create(Purpl
 
   gc = purple_account_get_connection(acct);
   g_return_if_fail(gc != NULL);
-  
+
   fields = purple_request_fields_new();
 
   g = purple_request_field_group_new(NULL);
   purple_request_fields_add_group(fields, g);
-  
+
   f = purple_request_field_string_new(CHAT_KEY_TOPIC, _("Topic"), NULL, FALSE);
   purple_request_field_group_add_field(g, f);
 
   f = purple_request_field_string_new(CHAT_KEY_INVITE, _("Message"), msg, FALSE);
   purple_request_field_group_add_field(g, f);
-  
+
   msgA = _("Create conference with user");
   msgB = _("Please enter a topic for the new conference, and an invitation"
 	   " message to be sent to %s");
@@ -3477,7 +3477,7 @@ static void conf_select_prompt_invite(Pu
   PurpleRequestField *f;
   GList *l;
   const char *msg;
-  
+
   f = purple_request_fields_get_field(fields, CHAT_KEY_INVITE);
   msg = purple_request_field_string_get_value(f);
 
@@ -3486,7 +3486,7 @@ static void conf_select_prompt_invite(Pu
 
   if(l) {
     gpointer d = purple_request_field_list_get_data(f, l->data);
-    
+
     if(GPOINTER_TO_INT(d) == 0x01) {
       blist_menu_conf_create(buddy, msg);
 
@@ -3500,7 +3500,7 @@ static void blist_menu_conf_list(PurpleB
 
 static void blist_menu_conf_list(PurpleBuddy *buddy,
 				 GList *confs) {
-  
+
   PurpleRequestFields *fields;
   PurpleRequestFieldGroup *g;
   PurpleRequestField *f;
@@ -3519,7 +3519,7 @@ static void blist_menu_conf_list(PurpleB
   g_return_if_fail(gc != NULL);
 
   fields = purple_request_fields_new();
-  
+
   g = purple_request_field_group_new(NULL);
   purple_request_fields_add_group(fields, g);
 
@@ -3532,10 +3532,10 @@ static void blist_menu_conf_list(PurpleB
   purple_request_field_list_add_icon(f, _("Create New Conference..."),
 			      NULL, GINT_TO_POINTER(0x01));
   purple_request_field_group_add_field(g, f);
-  
+
   f = purple_request_field_string_new(CHAT_KEY_INVITE, "Message", NULL, FALSE);
   purple_request_field_group_add_field(g, f);
-  
+
   msgA = _("Invite user to a conference");
   msgB = _("Select a conference from the list below to send an invite to"
 	   " user %s. Select \"Create New Conference\" if you'd like to"
@@ -3655,12 +3655,12 @@ static GList *mw_prpl_chat_info(PurpleCo
 static GList *mw_prpl_chat_info(PurpleConnection *gc) {
   GList *l = NULL;
   struct proto_chat_entry *pce;
-  
+
   pce = g_new0(struct proto_chat_entry, 1);
   pce->label = _("Topic:");
   pce->identifier = CHAT_KEY_TOPIC;
   l = g_list_append(l, pce);
-  
+
   return l;
 }
 
@@ -3708,13 +3708,13 @@ static void prompt_host(PurpleConnection
   PurpleAccount *acct;
   const char *msgA;
   char *msg;
-  
+
   acct = purple_connection_get_account(gc);
   msgA = _("No host or IP address has been configured for the"
 	  " Meanwhile account %s. Please enter one below to"
 	  " continue logging in.");
   msg = g_strdup_printf(msgA, NSTR(purple_account_get_username(acct)));
-  
+
   purple_request_input(gc, _("Meanwhile Connection Setup"),
 		     _("No Sametime Community Server Specified"), msg,
 		     MW_PLUGIN_DEFAULT_HOST, FALSE, FALSE, NULL,
@@ -3748,7 +3748,7 @@ static void mw_prpl_login(PurpleAccount 
     *host++ = '\0';
     purple_account_set_string(account, MW_KEY_HOST, host);
     purple_account_set_username(account, user);
-    
+
   } else {
     host = (char *) purple_account_get_string(account, MW_KEY_HOST,
 					    MW_PLUGIN_DEFAULT_HOST);
@@ -3787,10 +3787,10 @@ static void mw_prpl_login(PurpleAccount 
     DEBUG_INFO("client id: 0x%04x\n", client);
     DEBUG_INFO("client major: 0x%04x\n", major);
     DEBUG_INFO("client minor: 0x%04x\n", minor);
-  
+
     mwSession_setProperty(pd->session, mwSession_CLIENT_TYPE_ID,
 			  GUINT_TO_POINTER(client), NULL);
-    
+
     mwSession_setProperty(pd->session, mwSession_CLIENT_VER_MAJOR,
 			  GUINT_TO_POINTER(major), NULL);
 
@@ -3928,7 +3928,7 @@ static char *im_mime_convert(PurpleConne
 				     (const char **) &end, &attr)) {
     char *id;
     PurpleStoredImage *img = NULL;
-    
+
     gsize len = (start - tmp);
 
     /* append the in-between-tags text */
@@ -3971,7 +3971,7 @@ static char *im_mime_convert(PurpleConne
       /* append the modified tag */
       g_string_append_printf(str, "<img src=\"cid:%s\">", cid);
       g_free(cid);
-      
+
     } else {
       /* append the literal image tag, since we couldn't find a
 	 relative imgstore object */
@@ -4045,7 +4045,7 @@ static int mw_prpl_send_im(PurpleConnect
       tmp = im_mime_convert(gc, conv, message);
       ret = mwConversation_send(conv, mwImSend_MIME, tmp);
       g_free(tmp);
-      
+
     } else if(mwConversation_supports(conv, mwImSend_HTML)) {
       /* send an HTML message */
 
@@ -4063,7 +4063,7 @@ static int mw_prpl_send_im(PurpleConnect
       ret = mwConversation_send(conv, mwImSend_PLAIN, tmp);
       g_free(tmp);
     }
-    
+
     return !ret;
 
   } else {
@@ -4084,7 +4084,7 @@ static unsigned int mw_prpl_send_typing(
 static unsigned int mw_prpl_send_typing(PurpleConnection *gc,
 					const char *name,
 					PurpleTypingState state) {
-  
+
   struct mwPurplePluginData *pd;
   struct mwIdBlock who = { (char *) name, NULL };
   struct mwConversation *conv;
@@ -4100,14 +4100,14 @@ static unsigned int mw_prpl_send_typing(
 
   if(mwConversation_isOpen(conv)) {
     mwConversation_send(conv, mwImSend_TYPING, t);
-    
+
   } else if((state == PURPLE_TYPING) || (state == PURPLE_TYPED)) {
     /* only open a channel for sending typing notification, not for
        when typing has stopped. There's no point in re-opening a
        channel just to tell someone that this side isn't typing. */
-    
+
     convo_queue(conv, mwImSend_TYPING, t);
-    
+
     if(! mwConversation_isPending(conv)) {
       mwConversation_open(conv);
     }
@@ -4121,7 +4121,7 @@ static const char *mw_client_name(guint1
   switch(type) {
   case mwLogin_LIB:
     return "Lotus Binary Library";
-    
+
   case mwLogin_JAVA_WEB:
     return "Lotus Java Client Applet";
 
@@ -4214,11 +4214,11 @@ static void mw_prpl_get_info(PurpleConne
 		tmp = g_strdup_printf(_("Unknown (0x%04x)<br>"), type);
 
 	  purple_notify_user_info_add_pair(user_info, _("Last Known Client"), tmp);
-		
+
 	  g_free(tmp);
     }
   }
-  
+
   tmp = user_supports_text(pd->srvc_aware, who);
   if(tmp) {
 	purple_notify_user_info_add_pair(user_info, _("Supports"), tmp);
@@ -4244,66 +4244,66 @@ static void mw_prpl_get_info(PurpleConne
   purple_notify_userinfo(gc, who, user_info, NULL, NULL);
   purple_notify_user_info_destroy(user_info);
 }
- 
- 
+
+
 static void mw_prpl_set_status(PurpleAccount *acct, PurpleStatus *status) {
   PurpleConnection *gc;
   const char *state;
   char *message = NULL;
   struct mwSession *session;
   struct mwUserStatus stat;
-  
+
   g_return_if_fail(acct != NULL);
   gc = purple_account_get_connection(acct);
-  
+
   state = purple_status_get_id(status);
-  
+
   DEBUG_INFO("Set status to %s\n", purple_status_get_name(status));
-  
+
   g_return_if_fail(gc != NULL);
-  
+
   session = gc_to_session(gc);
   g_return_if_fail(session != NULL);
-  
+
   /* get a working copy of the current status */
   mwUserStatus_clone(&stat, mwSession_getUserStatus(session));
-  
+
   /* determine the state */
   if(! strcmp(state, MW_STATE_ACTIVE)) {
     stat.status = mwStatus_ACTIVE;
-    
+
   } else if(! strcmp(state, MW_STATE_AWAY)) {
     stat.status = mwStatus_AWAY;
-    
+
   } else if(! strcmp(state, MW_STATE_BUSY)) {
     stat.status = mwStatus_BUSY;
   }
-  
+
   /* determine the message */
   message = (char *) purple_status_get_attr_string(status, MW_STATE_MESSAGE);
-  
+
   if(message) {
     /* all the possible non-NULL values of message up to this point
        are const, so we don't need to free them */
     message = purple_markup_strip_html(message);
   }
-  
+
   /* out with the old */
   g_free(stat.desc);
-  
+
   /* in with the new */
   stat.desc = (char *) message;
-  
+
   mwSession_setUserStatus(session, &stat);
   mwUserStatus_clear(&stat);
 }
 
- 
+
 static void mw_prpl_set_idle(PurpleConnection *gc, int t) {
   struct mwSession *session;
   struct mwUserStatus stat;
- 
 
+
   session = gc_to_session(gc);
   g_return_if_fail(session != NULL);
 
@@ -4347,7 +4347,7 @@ static void notify_add(PurpleConnection 
 static void notify_add(PurpleConnection *gc, GList *row, void *user_data) {
   BuddyAddData *data = user_data;
   const char *group_name = NULL;
-  
+
   if (data && data->group) {
     group_name = purple_group_get_name(data->group);
   }
@@ -4392,13 +4392,13 @@ static void multi_resolved_query(struct 
   for(l = result->matches; l; l = l->next) {
     struct mwResolveMatch *match = l->data;
     GList *row = NULL;
-        
+
     DEBUG_INFO("multi resolve: %s, %s\n",
 	       NSTR(match->id), NSTR(match->name));
 
     if(!match->id || !match->name)
       continue;
-    
+
     row = g_list_append(row, g_strdup(match->name));
     row = g_list_append(row, g_strdup(match->id));
     purple_notify_searchresults_row_add(sres, row);
@@ -4440,7 +4440,7 @@ static void add_buddy_resolved(struct mw
   if(!code && res && res->matches) {
     if(!res->matches->next) {
       struct mwResolveMatch *match = res->matches->data;
-      
+
       /* only one? that might be the right one! */
       if(strcmp(res->name, match->id)) {
 	/* uh oh, the single result isn't identical to the search
@@ -4448,7 +4448,7 @@ static void add_buddy_resolved(struct mw
 	   the user meant to add */
 	purple_blist_remove_buddy(buddy);
 	multi_resolved_query(res, gc, data);
-	
+
       } else {
 
 	/* same person, set the server alias */
@@ -4463,13 +4463,13 @@ static void add_buddy_resolved(struct mw
 
         g_free(data);
       }
-      
+
     } else {
       /* prompt user if more than one match was returned */
       purple_blist_remove_buddy(buddy);
       multi_resolved_query(res, gc, data);
     }
-    
+
     return;
   }
 
@@ -4628,7 +4628,7 @@ static void privacy_fill(struct mwPrivac
 
 static void privacy_fill(struct mwPrivacyInfo *priv,
 			 GSList *members) {
-  
+
   struct mwUserItem *u;
   guint count;
 
@@ -4690,7 +4690,7 @@ static void mw_prpl_set_permit_deny(Purp
     DEBUG_INFO("PURPLE_PRIVACY_DENY_ALL\n");
     privacy.deny = FALSE;
     break;
-    
+
   default:
     DEBUG_INFO("acct->perm_deny is 0x%x\n", acct->perm_deny);
     return;
@@ -4745,12 +4745,12 @@ static void mw_prpl_join_chat(PurpleConn
 
   struct mwPurplePluginData *pd;
   char *c, *t;
-  
+
   pd = gc->proto_data;
 
   c = g_hash_table_lookup(components, CHAT_KEY_NAME);
   t = g_hash_table_lookup(components, CHAT_KEY_TOPIC);
-  
+
   if(g_hash_table_lookup(components, CHAT_KEY_IS_PLACE)) {
     /* use place service */
     struct mwServicePlace *srvc;
@@ -4759,7 +4759,7 @@ static void mw_prpl_join_chat(PurpleConn
     srvc = pd->srvc_place;
     place = mwPlace_new(srvc, c, t);
     mwPlace_open(place);
-     
+
   } else {
     /* use conference service */
     struct mwServiceConference *srvc;
@@ -4771,7 +4771,7 @@ static void mw_prpl_join_chat(PurpleConn
     if(conf) {
       DEBUG_INFO("accepting conference invitation\n");
       mwConference_accept(conf);
-      
+
     } else {
       DEBUG_INFO("creating new conference\n");
       conf = mwConference_new(srvc, t);
@@ -4787,7 +4787,7 @@ static void mw_prpl_reject_chat(PurpleCo
   struct mwPurplePluginData *pd;
   struct mwServiceConference *srvc;
   char *c;
-  
+
   pd = gc->proto_data;
   srvc = pd->srvc_conf;
 
@@ -5046,7 +5046,7 @@ static gboolean mw_prpl_can_receive_file
 
   srvc = pd->srvc_aware;
   g_return_val_if_fail(srvc != NULL, FALSE);
-  
+
   acct = purple_connection_get_account(gc);
   g_return_val_if_fail(acct != NULL, FALSE);
 
@@ -5097,7 +5097,7 @@ static void ft_outgoing_init(PurpleXfer 
     char *tmp = strrchr(filename, G_DIR_SEPARATOR);
     if(tmp++) filename = tmp;
   }
-  
+
   ft = mwFileTransfer_new(srvc, &idb, NULL, filename, filesize);
 
   purple_xfer_ref(xfer);
@@ -5110,7 +5110,7 @@ static void ft_outgoing_cancel(PurpleXfe
 
 static void ft_outgoing_cancel(PurpleXfer *xfer) {
   struct mwFileTransfer *ft = xfer->data;
-  
+
   DEBUG_INFO("ft_outgoing_cancel called\n");
 
   if(ft) mwFileTransfer_cancel(ft);
@@ -5210,7 +5210,7 @@ static PurplePluginProtocolInfo mw_prpl_
   .offline_message           = NULL,
   .whiteboard_prpl_ops       = NULL,
   .send_raw                  = NULL,
-  .struct_size               = sizeof(PurplePluginProtocolInfo)		
+  .struct_size               = sizeof(PurplePluginProtocolInfo)
 };
 
 
@@ -5220,11 +5220,11 @@ mw_plugin_get_plugin_pref_frame(PurplePl
   PurplePluginPref *pref;
 
   frame = purple_plugin_pref_frame_new();
-  
+
   pref = purple_plugin_pref_new_with_label(_("Remotely Stored Buddy List"));
   purple_plugin_pref_frame_add(frame, pref);
-  
 
+
   pref = purple_plugin_pref_new_with_name(MW_PRPL_OPT_BLIST_ACTION);
   purple_plugin_pref_set_label(pref, _("Buddy List Storage Mode"));
 
@@ -5344,7 +5344,7 @@ static void remote_group_multi_cleanup(g
 
 static void remote_group_multi_cleanup(gpointer ignore,
 				       PurpleRequestFields *fields) {
-  
+
   PurpleRequestField *f;
   GList *l;
 
@@ -5376,7 +5376,7 @@ static void remote_group_done(struct mwP
 
   gc = pd->gc;
   acct = purple_connection_get_account(gc);
-  
+
   /* collision checking */
   group = purple_find_group(name);
   if(group) {
@@ -5497,7 +5497,7 @@ static void remote_group_resolved(struct
 
   gc = pd->gc;
   g_return_if_fail(gc != NULL);
-  
+
   if(!code && results) {
     res = results->data;
 
@@ -5537,7 +5537,7 @@ static void remote_group_action_cb(Purpl
 
   query = g_list_prepend(NULL, (char *) name);
   flags = mwResolveFlag_FIRST | mwResolveFlag_GROUPS;
-  
+
   req = mwServiceResolve_resolve(srvc, query, flags, remote_group_resolved,
 				 NULL, NULL);
   g_list_free(query);
@@ -5599,7 +5599,7 @@ static void search_notify(struct mwResol
 
     if(!match->id || !match->name)
       continue;
-    
+
     row = g_list_append(row, g_strdup(match->name));
     row = g_list_append(row, g_strdup(match->id));
     purple_notify_searchresults_row_add(sres, row);
@@ -5659,7 +5659,7 @@ static void search_action_cb(PurpleConne
 
   pd = gc->proto_data;
   srvc = pd->srvc_resolve;
-  
+
   query = g_list_prepend(NULL, (char *) name);
   flags = mwResolveFlag_FIRST | mwResolveFlag_USERS;
 
@@ -5837,7 +5837,7 @@ static void mw_plugin_init(PurplePlugin 
      get caught here */
   log_handler[0] = g_log_set_handler(G_LOG_DOMAIN, logflags,
 				     mw_log_handler, NULL);
-  
+
   /* redirect meanwhile's logging to purple's */
   log_handler[1] = g_log_set_handler("meanwhile", logflags,
 				     mw_log_handler, NULL);
============================================================
--- pidgin/plugins/musicmessaging/musicmessaging.c	fa27cdfa57f3b551c7e50e15856573ac178d8913
+++ pidgin/plugins/musicmessaging/musicmessaging.c	5197d9c886e489e77e4ef4f2ff763aec3a1198cd
@@ -49,11 +49,11 @@ typedef struct {
 	GtkWidget *seperator; /* seperator in the conversation */
 	GtkWidget *button; /* button in the conversation */
 	GPid pid; /* the pid of the score editor */
-	
+
 	gboolean started; /* session has started and editor run */
 	gboolean originator; /* started the mm session */
 	gboolean requested; /* received a request to start a session */
-	
+
 } MMConversation;
 
 static gboolean start_session(MMConversation *mmconv);
@@ -97,9 +97,9 @@ void music_messaging_change_request(cons
 /* Exported functions */
 void music_messaging_change_request(const int session, const char *command, const char *parameters)
 {
-	
+
 	MMConversation *mmconv = (MMConversation *)g_list_nth_data(conversations, session);
-	
+
 	if (mmconv->started)
 	{
 		if (mmconv->originator)
@@ -110,50 +110,50 @@ void music_messaging_change_request(cons
 		{
 			GString *to_send = g_string_new("");
 			g_string_append_printf(to_send, "##MM## request %s %s##MM##", command, parameters);
-			
+
 			purple_conv_im_send(PURPLE_CONV_IM(mmconv->conv), to_send->str);
-			
+
 			purple_debug_misc("musicmessaging", "Sent request: %s\n", to_send->str);
 		}
 	}
-			
+
 }
 
 void music_messaging_change_confirmed(const int session, const char *command, const char *parameters)
 {
-	
+
 	MMConversation *mmconv = (MMConversation *)g_list_nth_data(conversations, session);
-	
+
 	if (mmconv->started)
 	{
 		if (mmconv->originator)
 		{
 			GString *to_send = g_string_new("");
 			g_string_append_printf(to_send, "##MM## confirm %s %s##MM##", command, parameters);
-			
+
 			purple_conv_im_send(PURPLE_CONV_IM(mmconv->conv), to_send->str);
 		} else
 		{
 			/* Do nothing. If they aren't the originator, then they can't confirm. */
 		}
 	}
-	
+
 }
 
 void music_messaging_change_failed(const int session, const char *id, const char *command, const char *parameters)
 {
 	MMConversation *mmconv = (MMConversation *)g_list_nth_data(conversations, session);
-	
+
 	purple_notify_message(plugin_pointer, PURPLE_NOTIFY_MSG_INFO, command,
                         parameters, NULL, NULL, NULL);
-	
+
 	if (mmconv->started)
 	{
 		if (mmconv->originator)
 		{
 			GString *to_send = g_string_new("");
 			g_string_append_printf(to_send, "##MM## failed %s %s %s##MM##", id, command, parameters);
-			
+
 			purple_conv_im_send(PURPLE_CONV_IM(mmconv->conv), to_send->str);
 		} else
 		{
@@ -165,10 +165,10 @@ void music_messaging_done_session(const 
 void music_messaging_done_session(const int session)
 {
 	MMConversation *mmconv = (MMConversation *)g_list_nth_data(conversations, session);
-	
+
 	purple_notify_message(plugin_pointer, PURPLE_NOTIFY_MSG_INFO, "Session",
 						"Session Complete", NULL, NULL, NULL);
-	
+
 	session_end(mmconv);
 }
 
@@ -181,10 +181,10 @@ static gboolean send_change_request (con
 static gboolean send_change_request (const int session, const char *id, const char *command, const char *parameters)
 {
 	DBusMessage *message;
-	
+
 	/* Create the signal we need */
 	message = dbus_message_new_signal (DBUS_PATH_PURPLE, DBUS_INTERFACE_PURPLE, "GscoreChangeRequest");
-	
+
 	/* Append the string "Ping!" to the signal */
 	dbus_message_append_args (message,
 							DBUS_TYPE_INT32, &session,
@@ -192,42 +192,42 @@ static gboolean send_change_request (con
 							DBUS_TYPE_STRING, &command,
 							DBUS_TYPE_STRING, &parameters,
 							DBUS_TYPE_INVALID);
-	
+
 	/* Send the signal */
 	dbus_connection_send (purple_dbus_get_connection(), message, NULL);
-	
+
 	/* Free the signal now we have finished with it */
 	dbus_message_unref (message);
-	
+
 	/* Tell the user we sent a signal */
 	g_printerr("Sent change request signal: %d %s %s %s\n", session, id, command, parameters);
-	
+
 	return TRUE;
 }
 
 static gboolean send_change_confirmed (const int session, const char *command, const char *parameters)
 {
 	DBusMessage *message;
-	
+
 	/* Create the signal we need */
 	message = dbus_message_new_signal (DBUS_PATH_PURPLE, DBUS_INTERFACE_PURPLE, "GscoreChangeConfirmed");
-	
+
 	/* Append the string "Ping!" to the signal */
 	dbus_message_append_args (message,
 							DBUS_TYPE_INT32, &session,
 							DBUS_TYPE_STRING, &command,
 							DBUS_TYPE_STRING, &parameters,
 							DBUS_TYPE_INVALID);
-	
+
 	/* Send the signal */
 	dbus_connection_send (purple_dbus_get_connection(), message, NULL);
-	
+
 	/* Free the signal now we have finished with it */
 	dbus_message_unref (message);
-	
+
 	/* Tell the user we sent a signal */
 	g_printerr("Sent change confirmed signal.\n");
-	
+
 	return TRUE;
 }
 
@@ -238,7 +238,7 @@ mmconv_from_conv_loc(PurpleConversation 
 	GList *l;
 	MMConversation *mmconv_current = NULL;
 	guint i;
-	
+
 	i = 0;
 	for (l = conversations; l != NULL; l = l->next)
 	{
@@ -268,36 +268,36 @@ plugin_load(PurplePlugin *plugin) {
        main purple dbus loop.  Without this statement, the purple dbus
        code wouldn't know about our functions. */
     PURPLE_DBUS_REGISTER_BINDINGS(plugin);
-	
+
 	/* Keep the plugin for reference (needed for notify's) */
 	plugin_pointer = plugin;
-	
+
 	/* Add the button to all the current conversations */
 	purple_conversation_foreach (init_conversation);
-	
+
 	/* Listen for any new conversations */
 	conv_list_handle = purple_conversations_get_handle();
-	
-	purple_signal_connect(conv_list_handle, "conversation-created", 
+
+	purple_signal_connect(conv_list_handle, "conversation-created",
 					plugin, PURPLE_CALLBACK(init_conversation), NULL);
-	
+
 	/* Listen for conversations that are ending */
 	purple_signal_connect(conv_list_handle, "deleting-conversation",
 					plugin, PURPLE_CALLBACK(conv_destroyed), NULL);
-					
+
 	/* Listen for sending/receiving messages to replace tags */
 	purple_signal_connect(conv_list_handle, "sending-im-msg",
 					plugin, PURPLE_CALLBACK(intercept_sent), NULL);
 	purple_signal_connect(conv_list_handle, "receiving-im-msg",
 					plugin, PURPLE_CALLBACK(intercept_received), NULL);
-	
+
 	return TRUE;
 }
 
 static gboolean
 plugin_unload(PurplePlugin *plugin) {
 	MMConversation *mmconv = NULL;
-	
+
 	while (conversations != NULL)
 	{
 		mmconv = conversations->data;
@@ -353,7 +353,7 @@ intercept_received(PurpleAccount *accoun
 intercept_received(PurpleAccount *account, char **sender, char **message, PurpleConversation *conv, int *flags)
 {
 	MMConversation *mmconv;
-	
+
 	if (conv == NULL) {
 		/* XXX: This is just to avoid a crash (#2726).
 		 *      We may want to create the conversation instead of returning from here
@@ -362,13 +362,13 @@ intercept_received(PurpleAccount *accoun
 	}
 
 	mmconv = mmconv_from_conv(conv);
-	
+
 	purple_debug_misc("purple-musicmessaging", "Intercepted: %s\n", *message);
 	if (strstr(*message, MUSICMESSAGING_PREFIX))
 	{
 		char *parsed_message = strtok(strstr(*message, MUSICMESSAGING_PREFIX), "<");
 		purple_debug_misc("purple-musicmessaging", "Received an MM Message: %s\n", parsed_message);
-				
+
 		if (mmconv->started)
 		{
 			if (strstr(parsed_message, "request"))
@@ -379,18 +379,18 @@ intercept_received(PurpleAccount *accoun
 					char *id = (mmconv->conv)->name;
 					char *command;
 					char *parameters;
-					
+
 					purple_debug_misc("purple-musicmessaging", "Sending request to gscore.\n");
-					
+
 					/* Get past the first two terms - '##MM##' and 'request' */
 					strtok(parsed_message, " "); /* '##MM##' */
 					strtok(NULL, " "); /* 'request' */
-					
+
 					command = strtok(NULL, " ");
 					parameters = strtok(NULL, "#");
-					
+
 					send_change_request (session, id, command, parameters);
-					
+
 				}
 			} else if (strstr(parsed_message, "confirm"))
 			{
@@ -399,40 +399,40 @@ intercept_received(PurpleAccount *accoun
 					int session = mmconv_from_conv_loc(conv);
 					char *command;
 					char *parameters;
-					
+
 					purple_debug_misc("purple-musicmessaging", "Sending confirmation to gscore.\n");
-					
+
 					/* Get past the first two terms - '##MM##' and 'confirm' */
 					strtok(parsed_message, " "); /* '##MM##' */
 					strtok(NULL, " "); /* 'confirm' */
-					
+
 					command = strtok(NULL, " ");
 					parameters = strtok(NULL, "#");
-					
+
 					send_change_confirmed (session, command, parameters);
 				}
 			} else if (strstr(parsed_message, "failed"))
 			{
 				char *id;
 				char *command;
-				
+
 				/* Get past the first two terms - '##MM##' and 'confirm' */
 				strtok(parsed_message, " "); /* '##MM##' */
 				strtok(NULL, " "); /* 'failed' */
-				
+
 				id = strtok(NULL, " ");
 				command = strtok(NULL, " ");
 				/* char *parameters = strtok(NULL, "#"); DONT NEED PARAMETERS */
-				
+
 				if ((mmconv->conv)->name == id)
 				{
-					purple_notify_message(plugin_pointer, PURPLE_NOTIFY_MSG_ERROR, 
+					purple_notify_message(plugin_pointer, PURPLE_NOTIFY_MSG_ERROR,
 							    _("Music Messaging"),
 							    _("There was a conflict in running the command:"), command, NULL, NULL);
 				}
 			}
 		}
-		
+
 		message = 0;
 	}
 	else if (strstr(*message, MUSICMESSAGING_START_MSG))
@@ -443,12 +443,12 @@ intercept_received(PurpleAccount *accoun
 			mmconv->requested = TRUE;
 			return FALSE;
 		}
-		
+
 	}
 	else if (strstr(*message, MUSICMESSAGING_CONFIRM_MSG))
 	{
 		purple_debug_misc("purple-musicmessagin", "Received MM confirm.\n");
-		
+
 		if (mmconv->originator)
 		{
 			start_session(mmconv);
@@ -476,11 +476,11 @@ static void send_request_confirmed(MMCon
 	const char *convName = purple_conversation_get_name(mmconv->conv);
 	serv_send_im(connection, convName, MUSICMESSAGING_CONFIRM_MSG, PURPLE_MESSAGE_SEND);
 }
-	
 
+
 static gboolean
 start_session(MMConversation *mmconv)
-{	
+{
 	run_editor(mmconv);
 	return TRUE;
 }
@@ -496,7 +496,7 @@ static void music_button_toggled (GtkWid
 static void music_button_toggled (GtkWidget *widget, gpointer data)
 {
 	MMConversation *mmconv = mmconv_from_conv(((MMConversation *) data)->conv);
-	if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (widget))) 
+	if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (widget)))
     {
 		if (((MMConversation *) data)->requested)
 		{
@@ -517,7 +517,7 @@ static void set_editor_path (GtkWidget *
 {
 	const char * path = gtk_entry_get_text((GtkEntry*)text_field);
 	purple_prefs_set_string("/plugins/gtk/musicmessaging/editor_path", path);
-	
+
 }
 
 static void run_editor (MMConversation *mmconv)
@@ -526,14 +526,14 @@ static void run_editor (MMConversation *
 	GString *session_id;
 	gchar * args[4];
 	args[0] = (gchar *)purple_prefs_get_string("/plugins/gtk/musicmessaging/editor_path");
-	
+
 	args[1] = "-session_id";
 	session_id = g_string_new("");
 	g_string_append_printf(session_id, "%d", mmconv_from_conv_loc(mmconv->conv));
 	args[2] = session_id->str;
-	
+
 	args[3] = NULL;
-	
+
 	if (!(g_spawn_async (".", args, NULL, 4, NULL, NULL, &(mmconv->pid), &spawn_error)))
 	{
 		purple_notify_error(plugin_pointer, _("Error Running Editor"),
@@ -559,21 +559,21 @@ static void init_conversation (PurpleCon
 {
 	MMConversation *mmconv;
 	mmconv = g_malloc(sizeof(MMConversation));
-	
+
 	mmconv->conv = conv;
 	mmconv->started = FALSE;
 	mmconv->originator = FALSE;
 	mmconv->requested = FALSE;
-	
+
 	add_button(mmconv);
-	
+
 	conversations = g_list_append(conversations, mmconv);
 }
 
 static void conv_destroyed (PurpleConversation *conv)
 {
 	MMConversation *mmconv = mmconv_from_conv(conv);
-	
+
 	remove_widget(mmconv->button);
 	remove_widget(mmconv->seperator);
 	if (mmconv->started)
@@ -586,7 +586,7 @@ static void add_button (MMConversation *
 static void add_button (MMConversation *mmconv)
 {
 	PurpleConversation *conv = mmconv->conv;
-	
+
 	GtkWidget *button, *image, *sep;
 	gchar *file_path;
 
@@ -601,16 +601,16 @@ static void add_button (MMConversation *
 	g_free(file_path);
 
 	gtk_container_add((GtkContainer *)button, image);
-	
+
 	sep = gtk_vseparator_new();
-	
+
 	mmconv->seperator = sep;
 	mmconv->button = button;
-	
+
 	gtk_widget_show(sep);
 	gtk_widget_show(image);
 	gtk_widget_show(button);
-	
+
 	gtk_box_pack_start(GTK_BOX(PIDGIN_CONVERSATION(conv)->toolbar), sep, FALSE, FALSE, 0);
 	gtk_box_pack_start(GTK_BOX(PIDGIN_CONVERSATION(conv)->toolbar), button, FALSE, FALSE, 0);
 }
@@ -618,7 +618,7 @@ static void remove_widget (GtkWidget *bu
 static void remove_widget (GtkWidget *button)
 {
 	gtk_widget_hide(button);
-	gtk_widget_destroy(button);		
+	gtk_widget_destroy(button);
 }
 
 static GtkWidget *
@@ -626,32 +626,32 @@ get_config_frame(PurplePlugin *plugin)
 {
 	GtkWidget *ret;
 	GtkWidget *vbox;
-	
+
 	GtkWidget *editor_path;
 	GtkWidget *editor_path_label;
 	GtkWidget *editor_path_button;
-	
+
 	/* Outside container */
 	ret = gtk_vbox_new(FALSE, 18);
 	gtk_container_set_border_width(GTK_CONTAINER(ret), 10);
 
 	/* Configuration frame */
 	vbox = pidgin_make_frame(ret, _("Music Messaging Configuration"));
-	
+
 	/* Path to the score editor */
 	editor_path = gtk_entry_new();
 	editor_path_label = gtk_label_new(_("Score Editor Path"));
 	editor_path_button = gtk_button_new_with_mnemonic(_("_Apply"));
-	
+
 	gtk_entry_set_text((GtkEntry*)editor_path, "/usr/local/bin/gscore");
-	
+
 	g_signal_connect(G_OBJECT(editor_path_button), "clicked",
 					 G_CALLBACK(set_editor_path), editor_path);
-					 
+
 	gtk_box_pack_start(GTK_BOX(vbox), editor_path_label, FALSE, FALSE, 0);
 	gtk_box_pack_start(GTK_BOX(vbox), editor_path, FALSE, FALSE, 0);
 	gtk_box_pack_start(GTK_BOX(vbox), editor_path_button, FALSE, FALSE, 0);
-	
+
 	gtk_widget_show_all(ret);
 
 	return ret;
============================================================
--- libpurple/protocols/simple/simple.c	8a2f298f4f681f8116aa9787b3114590cec92291
+++ libpurple/protocols/simple/simple.c	5f92b22700a0bcbdbc615aa617d6410daca73e36
@@ -395,7 +395,7 @@ static void fill_auth(struct simple_acco
 		g_strfreev(parts);
 		purple_debug(PURPLE_DEBUG_MISC, "simple", "nonce: %s realm: %s\n",
 					 auth->nonce ? auth->nonce : "(null)",
-					 auth->realm ? auth->realm : "(null)"); 
+					 auth->realm ? auth->realm : "(null)");
 
 		if(auth->realm) {
 			auth->digest_session_key = purple_cipher_http_digest_calculate_session_key(
@@ -796,11 +796,11 @@ static gboolean process_subscribe_respon
 				b->dialog->theirtag = g_strdup(theirtag);
 				b->dialog->callid = g_strdup(callid);
 
-				purple_debug_info("simple", "ourtag: %s\n", 
+				purple_debug_info("simple", "ourtag: %s\n",
 					ourtag);
-				purple_debug_info("simple", "theirtag: %s\n", 
+				purple_debug_info("simple", "theirtag: %s\n",
 					theirtag);
-				purple_debug_info("simple", "callid: %s\n", 
+				purple_debug_info("simple", "callid: %s\n",
 					callid);
 				g_free(theirtag);
 				g_free(ourtag);
@@ -982,7 +982,7 @@ static gboolean subscribe_timeout(struct
 	}
 
 	/* publish status again if our last update is about to expire. */
-	if (sip->republish != -1 && 
+	if (sip->republish != -1 &&
 		sip->republish < curtime &&
 		purple_account_get_bool(sip->account, "dopublish", TRUE))
 	{
@@ -1272,9 +1272,9 @@ static void process_incoming_notify(stru
 		isonline = TRUE;
 
 
-	if(isonline) 
+	if(isonline)
 		purple_prpl_got_user_status(sip->account, from, "available", NULL);
-	else 
+	else
 		purple_prpl_got_user_status(sip->account, from, "offline", NULL);
 
 	xmlnode_free(pidf);
============================================================
--- pidgin/plugins/crazychat/QTUtilities.c	1e527db2d1518507adcda5e24edb47900aea3758
+++ pidgin/plugins/crazychat/QTUtilities.c	bcb90feae6549b01cd3648d2e7c8e0f2eef2211d
@@ -1,10 +1,10 @@
 /*
 	File:		QTUtilities.c
-	
+
 	Description: Miscellaneous QuickTime utility routines.
 
 	Copyright: 	(C) Copyright 2003 Apple Computer, Inc. All rights reserved.
-	
+
 	Disclaimer:	IMPORTANT:  This Apple software is supplied to you by Apple Computer, Inc.
 				("Apple") in consideration of your agreement to the following terms, and your
 				use, installation, modification or redistribution of this Apple software
@@ -39,7 +39,7 @@
 				OF THE APPLE SOFTWARE, HOWEVER CAUSED AND WHETHER UNDER THEORY OF CONTRACT, TORT
 				(INCLUDING NEGLIGENCE), STRICT LIABILITY OR OTHERWISE, EVEN IF APPLE HAS BEEN
 				ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-				
+
 	Change History (most recent first):
 
 */
@@ -62,21 +62,21 @@ OSErr GetMovieFromFile(FSSpec *fsspecPtr
     OSErr	result;
 
     *theMovie = NULL;
-    
+
 	result = OpenMovieFile(fsspecPtr, &resRefNum, 0);
 	if (result == noErr)
     {
         short actualResId = DoTheRightThing;
-        
-        result = NewMovieFromFile(theMovie, 
-                                resRefNum, 
-                                &actualResId, 
+
+        result = NewMovieFromFile(theMovie,
+                                resRefNum,
+                                &actualResId,
                                 (unsigned char *) 0,
                                 0,
                                 (Boolean *) 0);
         CloseMovieFile(resRefNum);
     }
-    
+
     return result;
 }
 
@@ -95,13 +95,13 @@ OSErr GetAMovieFile(Movie *theMovie)
     OSErr	result = noErr;
 
     *theMovie = nil;
-    
+
     result = GetOneFileWithPreview(2, myTypeList, &theFSSpec, NULL);
     if (result != userCanceledErr)
-    {            
+    {
         result = GetMovieFromFile(&theFSSpec, theMovie);
     }
-    
+
     return result;
 }
 
@@ -114,7 +114,7 @@ void NormalizeMovieRect(Movie theMovie)
 void NormalizeMovieRect(Movie theMovie)
 {
     Rect movieBounds;
-    
+
 	GetMovieBox(theMovie, &movieBounds);
 	OffsetRect(&movieBounds, -movieBounds.left, -movieBounds.top);
 	movieBounds.right = movieBounds.left + 640;
@@ -138,13 +138,13 @@ void EraseRectAndAlpha(GWorldPtr gWorld,
 
     LockPixels(pixMap);
 	rows = pRect->bottom - pRect->top;
-    
+
     rowBaseAddr = GetPixBaseAddr(pixMap) + (GetPixRowBytes(pixMap) & 0x3fff) * pRect->top + pRect->left * GetPixDepth(pixMap) / 8;
 	do
 	{
 		long	cols;
 		UInt32	*baseAddr;
-		
+
 		cols = pRect->right - pRect->left;
 		baseAddr = (UInt32*)rowBaseAddr;
 		rowBaseAddr += (**pixMap).rowBytes & 0x3fff;
@@ -169,7 +169,7 @@ OSErr CreateDecompSeqForSGChannelData(SG
 OSErr CreateDecompSeqForSGChannelData(SGChannel sgChannel, Rect *srcBounds, GWorldPtr imageDestination, ImageSequence *imageSeqID)
 {
 	OSErr err = noErr;
-	
+
 	ImageDescriptionHandle	imageDesc = (ImageDescriptionHandle)NewHandle(sizeof(ImageDescription));
 	if (imageDesc)
 	{
@@ -178,7 +178,7 @@ OSErr CreateDecompSeqForSGChannelData(SG
 		// The original version of this code had a bug - it passed in a Crop Rect to DecompressSequenceBegin instead of a scaling matrix
 		// This only worked because of another bug inside QT that reated the crop Rect as a destination rect for DV
 		// the following code does the right thing in all cases.
-		
+
 		if (err == noErr)
 		{
 			MatrixRecord 	mr;
@@ -189,17 +189,17 @@ OSErr CreateDecompSeqForSGChannelData(SG
 			fromR.right = (**imageDesc).width;
 			fromR.bottom = (**imageDesc).height;
 			RectMatrix(&mr, &fromR, srcBounds);
-			
+
 			err = DecompressSequenceBegin(imageSeqID, imageDesc, imageDestination, 0, nil, &mr,srcCopy,nil,0, codecNormalQuality, bestSpeedCodec);
 		}
-		
+
 		DisposeHandle((Handle)imageDesc);
 	}
 	else
 	{
 		err = MemError();
 	}
-	
+
 	return err;
 }
 
@@ -214,21 +214,21 @@ OSErr CreateDecompSeqForGWorldData(GWorl
 OSErr CreateDecompSeqForGWorldData(GWorldPtr srcGWorld, Rect *srcBounds, MatrixRecordPtr mr, GWorldPtr imageDestination, ImageSequence *imageSeqID)
 {
     OSErr err;
-    
+
     ImageDescriptionHandle imageDesc = (ImageDescriptionHandle)NewHandle(sizeof(ImageDescription));
     if (imageDesc)
     {
         err = MakeImageDescriptionForPixMap (GetGWorldPixMap(srcGWorld), &imageDesc);
-        err = DecompressSequenceBegin(	imageSeqID, 
-                                        imageDesc, 
-                                        imageDestination, 
-                                        0, 
-                                        srcBounds, 
-                                        mr, 
-                                        srcCopy, 
-                                        nil, 
-                                        0, 
-                                        codecNormalQuality, 
+        err = DecompressSequenceBegin(	imageSeqID,
+                                        imageDesc,
+                                        imageDestination,
+                                        0,
+                                        srcBounds,
+                                        mr,
+                                        srcCopy,
+                                        nil,
+                                        0,
+                                        codecNormalQuality,
                                         bestSpeedCodec);
         DisposeHandle((Handle)imageDesc);
     }
@@ -236,7 +236,7 @@ OSErr CreateDecompSeqForGWorldData(GWorl
     {
         err = MemError();
     }
-    
+
     return err;
 }
 
@@ -254,7 +254,7 @@ OSErr CreateNewSGChannelForRecording(Com
 OSErr CreateNewSGChannelForRecording(ComponentInstance seqGrab, SGDataUPP dataProc, CGrafPtr drawPort, Rect *theRect, SGChannel *sgChannel, long refCon)
 {
 	OSErr err = noErr;
-	
+
 	BailErr((err = SGInitialize(seqGrab)));
 
 	// tell it we're not making a movie
@@ -262,13 +262,13 @@ OSErr CreateNewSGChannelForRecording(Com
 	// It wants a port, even if its not drawing to it
 	BailErr((err = SGSetGWorld(seqGrab, drawPort, GetMainDevice())));
 	BailErr((err = SGNewChannel(seqGrab, VideoMediaType, sgChannel)));
-	
+
 	// let the user configure the video channel
 	//BailErr((err = SGSettingsDialog(seqGrab, *sgChannel, 0, nil, 0, nil, 0)));    // ************************
-// ************************************************************	
-	
-	
-	
+// ************************************************************
+
+
+
 	BailErr((err = SGSetChannelBounds(*sgChannel, theRect)));
 	// set usage for new video channel to avoid playthrough
 	BailErr((err = SGSetChannelUsage(*sgChannel, seqGrabRecord ))); //note we don't set seqGrabPlayDuringRecord
@@ -282,14 +282,14 @@ bail:
 //////////
 //
 // DoCloseSG
-// Terminate recording for our SG channel - dispose of the channel and 
+// Terminate recording for our SG channel - dispose of the channel and
 // the associated SG component instance
 //
 //////////
 
 void DoCloseSG(ComponentInstance seqGrab, SGChannel sgChannel, SGDataUPP dataProc)
 {
-	if(seqGrab) 
+	if(seqGrab)
     {
 		SGStop(seqGrab);
         SGSetDataProc(seqGrab, NULL ,NULL);
============================================================
--- pidgin/plugins/crazychat/Utilities.c	afc95f871700072ac17655f9ccd2129ba157afdf
+++ pidgin/plugins/crazychat/Utilities.c	9a57612619371735139737e69327126f1d590098
@@ -1,10 +1,10 @@
 /*
 	File:		Utilities.c
-	
+
 	Description: Miscellaneous Utility routines.
 
 	Copyright: 	(C) Copyright 2003 Apple Computer, Inc. All rights reserved.
-	
+
 	Disclaimer:	IMPORTANT:  This Apple software is supplied to you by Apple Computer, Inc.
 				("Apple") in consideration of your agreement to the following terms, and your
 				use, installation, modification or redistribution of this Apple software
@@ -39,7 +39,7 @@
 				OF THE APPLE SOFTWARE, HOWEVER CAUSED AND WHETHER UNDER THEORY OF CONTRACT, TORT
 				(INCLUDING NEGLIGENCE), STRICT LIABILITY OR OTHERWISE, EVEN IF APPLE HAS BEEN
 				ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-				
+
 	Change History (most recent first):
 
 */
@@ -60,9 +60,9 @@ const StringPtr kApplicationName = "\pYo
 //
 // Note that both StandardGetFilePreview and NavGetFile use the function specified by theFilterProc as a
 // file filter. This framework always passes NULL in the theFilterProc parameter. If you use this function
-// in your own code, keep in mind that on Windows the function specifier must be of type FileFilterUPP and 
+// in your own code, keep in mind that on Windows the function specifier must be of type FileFilterUPP and
 // on Macintosh it must be of type NavObjectFilterUPP. (You can use the QTFrame_GetFileFilterUPP to create
-// a function specifier of the appropriate type.) Also keep in mind that Navigation Services expects a file 
+// a function specifier of the appropriate type.) Also keep in mind that Navigation Services expects a file
 // filter function to return true if a file is to be displayed, while the Standard File Package expects the
 // filter to return false if a file is to be displayed.
 //
@@ -70,7 +70,7 @@ OSErr GetOneFileWithPreview (short theNu
 
 OSErr GetOneFileWithPreview (short theNumTypes, TypeListPtr theTypeList, FSSpecPtr theFSSpecPtr, void *theFilterProc)
 {
-	
+
 #if TARGET_OS_WIN32
 	StandardFileReply	myReply;
 #endif
@@ -81,7 +81,7 @@ OSErr GetOneFileWithPreview (short theNu
 	NavEventUPP		myEventUPP = NewNavEventUPP(HandleNavEvent);
 #endif
 	OSErr				myErr = noErr;
-	
+
 	if (theFSSpecPtr == NULL)
 		return(paramErr);
 
@@ -90,7 +90,7 @@ OSErr GetOneFileWithPreview (short theNu
 	StandardGetFilePreview((FileFilterUPP)theFilterProc, theNumTypes, (ConstSFTypeListPtr)theTypeList, &myReply);
 	if (!myReply.sfGood)
 		return(userCanceledErr);
-	
+
 	// make an FSSpec record
 	myErr = FSMakeFSSpec(myReply.sfFile.vRefNum, myReply.sfFile.parID, myReply.sfFile.name, theFSSpecPtr);
 #endif
@@ -101,34 +101,34 @@ OSErr GetOneFileWithPreview (short theNu
 	myDialogOptions.dialogOptionFlags -= kNavNoTypePopup;
 	myDialogOptions.dialogOptionFlags -= kNavAllowMultipleFiles;
 	BlockMoveData(kApplicationName, myDialogOptions.clientName, kApplicationName[0] + 1);
-	
+
 	// create a handle to an 'open' resource
 	myOpenList = (NavTypeListHandle)CreateOpenHandle(kApplicationSignature, theNumTypes, theTypeList);
 	if (myOpenList != NULL)
 		HLock((Handle)myOpenList);
-	
+
 	// prompt the user for a file
 	myErr = NavGetFile(NULL, &myReply, &myDialogOptions, myEventUPP, NULL, (NavObjectFilterUPP)theFilterProc, myOpenList, NULL);
 	if ((myErr == noErr) && myReply.validRecord) {
 		AEKeyword		myKeyword;
 		DescType		myActualType;
 		Size			myActualSize = 0;
-		
+
 		// get the FSSpec for the selected file
 		if (theFSSpecPtr != NULL)
 			myErr = AEGetNthPtr(&(myReply.selection), 1, typeFSS, &myKeyword, &myActualType, theFSSpecPtr, sizeof(FSSpec), &myActualSize);
 
 		NavDisposeReply(&myReply);
 	}
-	
+
 	if (myOpenList != NULL) {
 		HUnlock((Handle)myOpenList);
 		DisposeHandle((Handle)myOpenList);
 	}
-	
+
 	DisposeNavEventUPP(myEventUPP);
 #endif
- 
+
 	return(myErr);
 }
 
@@ -142,7 +142,7 @@ Handle CreateOpenHandle (OSType theAppli
 Handle CreateOpenHandle (OSType theApplicationSignature, short theNumTypes, TypeListPtr theTypeList)
 {
 	Handle			myHandle = NULL;
-	
+
 	// see if we have an 'open' resource...
 	myHandle = Get1Resource('open', 128);
 	if ( myHandle != NULL && ResError() == noErr ) {
@@ -151,22 +151,22 @@ Handle CreateOpenHandle (OSType theAppli
 	} else {
 		myHandle = NULL;
 	}
-	
+
 	// nope, use the passed in types and dynamically create the NavTypeList
 	if (theTypeList == NULL)
 		return myHandle;
-	
+
 	if (theNumTypes > 0) {
 		myHandle = NewHandle(sizeof(NavTypeList) + (theNumTypes * sizeof(OSType)));
 		if (myHandle != NULL) {
 			NavTypeListHandle 	myOpenResHandle	= (NavTypeListHandle)myHandle;
-			
+
 			(*myOpenResHandle)->componentSignature = theApplicationSignature;
 			(*myOpenResHandle)->osTypeCount = theNumTypes;
 			BlockMoveData(theTypeList, (*myOpenResHandle)->osType, theNumTypes * sizeof(OSType));
 		}
 	}
-	
+
 	return myHandle;
 }
 
@@ -180,7 +180,7 @@ PASCAL_RTN void HandleNavEvent(NavEventC
 PASCAL_RTN void HandleNavEvent(NavEventCallbackMessage theCallBackSelector, NavCBRecPtr theCallBackParms, void *theCallBackUD)
 {
 #pragma unused(theCallBackUD)
-	
+
 	if (theCallBackSelector == kNavCBEvent) {
 		switch (theCallBackParms->eventData.eventDataParms.event->what) {
 			case updateEvt:
@@ -212,27 +212,27 @@ OSErr PutFile (ConstStr255Param thePromp
 
 	if ((theFSSpecPtr == NULL) || (theIsSelected == NULL) || (theIsReplacing == NULL))
 		return(paramErr);
-	
+
 	// assume we are not replacing an existing file
 	*theIsReplacing = false;
-	
+
         *theIsSelected = false;
-        
+
 	// specify the options for the dialog box
 	NavGetDefaultDialogOptions(&myDialogOptions);
 	myDialogOptions.dialogOptionFlags += kNavNoTypePopup;
 	myDialogOptions.dialogOptionFlags += kNavDontAutoTranslate;
 	BlockMoveData(theFileName, myDialogOptions.savedFileName, theFileName[0] + 1);
 	BlockMoveData(thePrompt, myDialogOptions.message, thePrompt[0] + 1);
-	
+
 	// prompt the user for a file
 	myErr = NavPutFile(NULL, &myReply, &myDialogOptions, myEventUPP, MovieFileType, sigMoviePlayer, NULL);
-	if ((myErr == noErr) && myReply.validRecord) 
+	if ((myErr == noErr) && myReply.validRecord)
     {
 		AEKeyword		myKeyword;
 		DescType		myActualType;
 		Size			myActualSize = 0;
-		
+
 		// get the FSSpec for the selected file
 		if (theFSSpecPtr != NULL)
 			myErr = AEGetNthPtr(&(myReply.selection), 1, typeFSS, &myKeyword, &myActualType, theFSSpecPtr, sizeof(FSSpec), &myActualSize);
@@ -245,8 +245,8 @@ OSErr PutFile (ConstStr255Param thePromp
 
 		NavDisposeReply(&myReply);
 	}
-		
 
+
 	DisposeNavEventUPP(myEventUPP);
 
 	return(myErr);
@@ -268,7 +268,7 @@ void DrawLobsterPICTtoGWorld(CGrafPtr de
         CGrafPtr	oldPort;
         GDHandle	oldDevice;
         Rect		frame = (**pict).picFrame;
-        
+
         GetGWorld(&oldPort, &oldDevice);
         SetGWorld(destGWorld, nil);
         // normalize coordinates
============================================================
--- pidgin/plugins/crazychat/camdata.c	418b4bf7c527fd485db52afdf14acbcbd3ebf14d
+++ pidgin/plugins/crazychat/camdata.c	070991676a083387fae18db9a01f326f91b8a451
@@ -23,7 +23,7 @@ UInt32		mRedCount[256], mGreenCound[256]
 long		mWorlds[20];
 UInt32		mRedCount[256], mGreenCound[256], mBlueCount[256];
 
-static void DecompressSequencePreflight(GWorldPtr srcGWorld, 
+static void DecompressSequencePreflight(GWorldPtr srcGWorld,
                                         ImageSequence *imageSeq,
                                         GWorldPtr destGWorld,
                                         Rect *srcRect);
@@ -38,25 +38,25 @@ OSErr InitializeMungData(Rect bounds)
 OSErr InitializeMungData(Rect bounds)
 {
 	OSErr err = noErr;
-    
-	if(myMungData) 
+
+	if(myMungData)
     {
         DisposeMungData();
 	}
-    
+
 	myMungData = (mungDataPtr)NewPtrClear(sizeof(mungDataRecord));
-	if (myMungData == nil) 
+	if (myMungData == nil)
     {
         err = MemError();
         goto bail;
     }
 
 	myMungData->effect = 0; // always
-    
 
+
 	BailErr(QTNewGWorld(&(myMungData->gw),bitdepth,&bounds,0,0,0));
 	LockPixels(GetGWorldPixMap(myMungData->gw));
-    
+
     SetMungDataColorDefaults();
 
 
@@ -66,8 +66,8 @@ OSErr InitializeMungData(Rect bounds)
 
 	SetCurrentClamp(-1);
 
-            
-	
+
+
 	myMungData->bounds = bounds;
 
 	SetRect(&bounds, 0, 0, 256*2+4, 128*3 + 20);
@@ -81,32 +81,32 @@ OSErr DisposeMungData(void)
 OSErr DisposeMungData(void)
 {  // check this out
     OSErr err = noErr;
-    
-    if(myMungData) 
+
+    if(myMungData)
     {
-        //if(myMungData->drawSeq) 
+        //if(myMungData->drawSeq)
         //{
         //    CDSequenceEnd(myMungData->drawSeq);
         //}
-        
-        if(myMungData->gw) 
+
+        if(myMungData->gw)
         {
-            DisposeGWorld(myMungData->gw); 
+            DisposeGWorld(myMungData->gw);
             myMungData->gw = nil;
         }
-        
-        if(myMungData->overlay) 
+
+        if(myMungData->overlay)
         {
-            DisposeGWorld(myMungData->overlay); 
+            DisposeGWorld(myMungData->overlay);
             myMungData->overlay = nil;
         }
-        
-        if(myMungData->histoWorld) 
+
+        if(myMungData->histoWorld)
         {
-            DisposeGWorld(myMungData->histoWorld); 
+            DisposeGWorld(myMungData->histoWorld);
             myMungData->histoWorld = nil;
         }
-    
+
         if (myMungData->effectTimeBase)
         {
             DisposeTimeBase(myMungData->effectTimeBase);
@@ -126,28 +126,28 @@ OSErr DisposeMungData(void)
     return err;
 }
 
-static void DecompressSequencePreflight(GWorldPtr srcGWorld, 
+static void DecompressSequencePreflight(GWorldPtr srcGWorld,
                                         ImageSequence *imageSeq,
                                         GWorldPtr destGWorld,
                                         Rect *srcRect)
 // might not need this one
-										
+
 {
     ImageDescriptionHandle imageDesc = nil;
-    
+
     BailErr(MakeImageDescriptionForPixMap (GetGWorldPixMap(srcGWorld), &imageDesc));
-    
+
     // use our built-in decompressor to draw
    // (**imageDesc).cType = kCustomDecompressorType;
-	
+
 // *********** MIGHT BE MAKING A BIG MISTAKE ******************
     // pass a compressed sample so a codec can perform preflighting before the first DecompressSequenceFrameWhen call
 
-    BailErr(DecompressSequenceBegin(imageSeq, 
-                                    imageDesc, 
+    BailErr(DecompressSequenceBegin(imageSeq,
+                                    imageDesc,
                                     destGWorld,
                                     0,
-                                    srcRect, 
+                                    srcRect,
                                     nil,
                                     srcCopy,
                                     nil,
@@ -169,7 +169,7 @@ void SetMungDataColorDefaults()
 
 void SetMungDataColorDefaults()
 {
-	if(myMungData) 
+	if(myMungData)
     {
         myMungData->redMin = 2;
         myMungData->redMax = 254;
@@ -183,15 +183,15 @@ void GetMungDataBoundsRect(Rect *boundsR
 void GetMungDataBoundsRect(Rect *boundsRect)
 // might not need this one
 {
-	MacSetRect (boundsRect, 
-			myMungData->bounds.left, 
-			myMungData->bounds.top, 
-			myMungData->bounds.right, 
+	MacSetRect (boundsRect,
+			myMungData->bounds.left,
+			myMungData->bounds.top,
+			myMungData->bounds.right,
 			myMungData->bounds.bottom
 	);
 }
 
-void SetCurrentClamp(short index)     // :crazy:20040426 
+void SetCurrentClamp(short index)     // :crazy:20040426
 {
     myMungData->selectedIndex = index;
 }
============================================================
--- pidgin/plugins/crazychat/camproc.c	5c0f3649eae48f824f1520d1fdccb5aa036f4725
+++ pidgin/plugins/crazychat/camproc.c	eb0d5c8d44ff23f90bd098997a66982092fe4c51
@@ -116,19 +116,19 @@ OSErr CamProc(struct input_instance *ins
 {
 	OSStatus error;
 	OSErr err = noErr;
-	
-	BailErr(err = InitializeMungData(mMungRect)); 
-	
+
+	BailErr(err = InitializeMungData(mMungRect));
+
 	bank = f;
-	
+
 	instance=inst;
 	mMyDataProcPtr 	= NewSGDataUPP(MiniMungDataProc);
 	mSeqGrab 		= OpenDefaultComponent(SeqGrabComponentType, 0);
-    BailErr((err = CreateNewSGChannelForRecording(	mSeqGrab, 
-                                    mMyDataProcPtr, 
+    BailErr((err = CreateNewSGChannelForRecording(	mSeqGrab,
+                                    mMyDataProcPtr,
                                     GetMungDataOffscreen(), // drawing destination
-                                    &mMungRect, 
-                                    &mSGChanVideo, 
+                                    &mMungRect,
+                                    &mSGChanVideo,
                                     NULL)));
 
 bail:
@@ -148,7 +148,7 @@ static pascal void SGIdlingTimer(EventLo
     {
         SGIdle(mSeqGrab);
     }
-    
+
     // Reschedule the event loop timer
     SetEventLoopTimerNextFireTime(inTimer, kMinimumIdleDurationInMillis);
 }
@@ -161,40 +161,40 @@ static pascal OSErr MiniMungDataProc(SGC
 	ComponentResult err = noErr;
 	CodecFlags 		ignore;
     GWorldPtr 		gWorld;
-    
 
 
 
+
 	if (!myMungData) goto bail;
-    
+
     gWorld = GetMungDataOffscreen();
 	if(gWorld)
 	{
 		if (mDecomSeq == 0)	// init a decompression sequence
 		{
 			Rect bounds;
-			
+
 			GetMungDataBoundsRect(&bounds);
-                    
+
             BailErr( CreateDecompSeqForSGChannelData(c, &bounds, gWorld, &mDecomSeq));
-    
+
 			if(1)
             //if ((!mUseOverlay) && (GetCurrentClamp() == -1) && (!mUseEffect))
             {
 				ImageSequence drawSeq;
-				
-                err = CreateDecompSeqForGWorldData(	gWorld, 
-                                                    &bounds, 
-                                                    nil, 
+
+                err = CreateDecompSeqForGWorldData(	gWorld,
+                                                    &bounds,
+                                                    nil,
                                                     GetMungDataWindowPort(),
                                                     &drawSeq);
 				SetMungDataDrawSeq(drawSeq);
             }
 		}
-        
+
         // decompress data to our offscreen gworld
 		BailErr(DecompressSequenceFrameS(mDecomSeq,p,len,0,&ignore,nil));
-		
+
 		// image is now in the GWorld - manipulate it at will!
 		//if ((mUseOverlay) || (GetCurrentClamp() != -1) || (mUseEffect))
         //{
@@ -208,9 +208,9 @@ static pascal OSErr MiniMungDataProc(SGC
 			// search for lobsters in our image data
             DetectLobster(gWorld);
         //}
-		
+
 	}
-	
+
 bail:
 	return err;
 }
@@ -221,7 +221,7 @@ void Die()
        // mSGTimerRef = nil;
       //  DisposeEventLoopTimerUPP(mSGTimerUPP);
        	DoCloseSG(mSeqGrab, mSGChanVideo, mMyDataProcPtr);
-	
+
 }
 
 
@@ -232,7 +232,7 @@ extern struct input_instance input_data;
 */
 extern unsigned int (*colorBuf)[644];
 extern struct input_instance input_data;
-	
+
 static void DetectLobster(GWorldPtr mungDataOffscreen)
 {
     CGrafPtr	oldPort;
@@ -253,19 +253,19 @@ static void DetectLobster(GWorldPtr mung
     long R_total=0;
 	long G_total=0;
 	long B_total=0;
-	
 
 
-	//fprintf(stderr, "Starting to find some lobsters...\n");	
 
+	//fprintf(stderr, "Starting to find some lobsters...\n");
 
+
     GetPortBounds(mungDataOffscreen, &bounds);
     OffsetRect(&bounds, -bounds.left, -bounds.top);
-    
-	
+
+
 	UInt32			color;
 
-			
+
 	int sum_x,sum_y=0;
 	int count=0;
 	int k,j;
@@ -279,11 +279,11 @@ static void DetectLobster(GWorldPtr mung
 	colorBuf = GetPixBaseAddr(pix);
 
 	switch (detection_mode) {
-	
+
 	case PRE_CALIBRATE_MODE:
 		//drawbox(CALIB_TOP, CALIB_BOTTOM, CALIB_LEFT, CALIB_RIGHT);
 		break;
-	
+
 	case CALIBRATE_MODE:
 		SkinStats(pix, y_click-CALIB_RADIUS, y_click+CALIB_RADIUS, x_click-CALIB_RADIUS, x_click+CALIB_RADIUS);
 		scan_region_left=x_click-CALIB_RADIUS;//10;
@@ -295,7 +295,7 @@ static void DetectLobster(GWorldPtr mung
 		//fprintf(stderr, "scan left: %d scan right: %d \n",scan_region_left,scan_region_right);
 		head_size_old=50;
 		break;
-		
+
 	case SCAN_MODE:
 		ScanSkin(pix);
 		drawbox(face_top, face_bottom, face_left, face_right,1);
@@ -310,14 +310,14 @@ static void DetectLobster(GWorldPtr mung
 		break;
 	}
 
-	//fprintf(stderr, "Lobsters found...\n");	
+	//fprintf(stderr, "Lobsters found...\n");
 
 
 }
-	
-	
-			
-	
+
+
+
+
 void ScanSkin(PixMapHandle p)
 {
 	int y,x,j,k;
@@ -336,13 +336,13 @@ void ScanSkin(PixMapHandle p)
 	sum_x=sum_y=count=0;
 	int horz_count[480];
 	int vert_count[640];
-	
 
-	
+
+
 	memset(horz_count,0,480*sizeof(int));
 	memset(vert_count,0,640*sizeof(int));
-	
-	if (eye_search_frame_count<NUM_FRAMES_EYE_SEARCH) eye_search_frame_count++;  
+
+	if (eye_search_frame_count<NUM_FRAMES_EYE_SEARCH) eye_search_frame_count++;
 	else if (eye_search_frame_count==NUM_FRAMES_EYE_SEARCH && bozo_bit==0)
 	{
 	bozo_bit=1;
@@ -388,7 +388,7 @@ void ScanSkin(PixMapHandle p)
 					right_eye_pt_count++;
 					//colorBuf[y][x]=0x0000FF00;
 					}
-				}   
+				}
 			}
 
 			if(SkinDetect(Y,E,S))
@@ -396,27 +396,27 @@ void ScanSkin(PixMapHandle p)
 				sum_x+=x;
 				sum_y+=y;
 				count++;
-		
+
 				++horz_count[y];
 				++vert_count[x];
-				
+
 				if (horz_count[y]>max_horz) max_horz=horz_count[y];
 				if (vert_count[x]>max_vert) max_vert=vert_count[x];
-				
+
 				//colorBuf[y][x]=0x00FF0000;
 			}
 
 		}
 	}
-	
-	
+
+
 	left_eye_x=left_eye_x_sum/left_eye_pt_count;
 	left_eye_y=left_eye_y_sum/left_eye_pt_count;
 	right_eye_x=right_eye_x_sum/right_eye_pt_count;
 	right_eye_y=right_eye_y_sum/right_eye_pt_count;
 
 
-					
+
 	int width=right_eye_x-left_eye_x;
 	int height=right_eye_y-left_eye_y;
 	double face_ang;
@@ -424,9 +424,9 @@ void ScanSkin(PixMapHandle p)
 	else face_ang=0;
 	face_ang=face_ang*180/pi;
 	//fprintf(stderr,"face angle: %f \n",face_ang);
-			
-	if ((left_eye_pt_count<5 || right_eye_pt_count<5 || width==0 || face_ang > 30 || face_ang < -30 
-		|| left_eye_y < (face_top+.15*(face_bottom-face_top)) 
+
+	if ((left_eye_pt_count<5 || right_eye_pt_count<5 || width==0 || face_ang > 30 || face_ang < -30
+		|| left_eye_y < (face_top+.15*(face_bottom-face_top))
 		|| right_eye_y < (face_top+.15*(face_bottom-face_top)))
 		&& bozo_bit==1){
 		eye_unconfidence++;
@@ -449,17 +449,17 @@ void ScanSkin(PixMapHandle p)
 		eye_search_frame_count=0;
 		//fprintf(stderr, "Recalibrating eyes\n");
 	}
-	
+
 	if ((last_eye_count_left-left_eye_pt_count> BLINK_THRESHOLD) && eye_unconfidence==0)
 	{
-	left_eye_blink_count=BLINK_LENGTH;	
+	left_eye_blink_count=BLINK_LENGTH;
 	}
 	if (left_eye_blink_count>0){
 		instance->face.left_eye_open=0;
 		left_eye_blink_count--;
 	}
-	else instance->face.left_eye_open=1;	
-	
+	else instance->face.left_eye_open=1;
+
 	if ((last_eye_count_right-right_eye_pt_count> BLINK_THRESHOLD) && eye_unconfidence==0)
 	{
 	right_eye_blink_count=BLINK_LENGTH;
@@ -472,15 +472,15 @@ void ScanSkin(PixMapHandle p)
 
 	if (instance->face.right_eye_open==0) instance->face.left_eye_open=0;
 	if (instance->face.left_eye_open==0) instance->face.right_eye_open=0;
-	
+
 	last_eye_count_left=left_eye_pt_count;
 	last_eye_count_right=right_eye_pt_count;
 
 	float x_shift=0;
 	if (width!=0) x_shift= (float)height/(float)width; // --> note dependence on earlier data here
 
-	
-if (bozo_bit==1){	
+
+if (bozo_bit==1){
 	int mouth_search_start_y=face_top+(.6*(face_bottom-face_top));
 	int mouth_search_end_y=face_bottom;
 	int mouth_search_start_x=(left_eye_x+right_eye_x)/2 + (-x_shift*(mouth_search_start_y-((right_eye_y+left_eye_y)/2))) ;
@@ -495,14 +495,14 @@ for (y=mouth_search_start_y; y < mouth_s
 	G = (color & 0x0000FF00) >> 8;
 	B = (color & 0x000000FF) >> 0;
 	lum=R+G+B;
-	
+
 	if (lum<min_lum_mouth) {
 		min_lum_mouth=lum;
 		mouth_ctr_x=x;
 		mouth_ctr_y=y;
 	}
 }
-	
+
 	mouth_size=(face_right-face_left)*100/640;
 	mouth_left=mouth_ctr_x-mouth_size;
 	if (mouth_left < face_left) mouth_left=face_left;
@@ -512,7 +512,7 @@ for (y=mouth_search_start_y; y < mouth_s
 	if (mouth_top < face_top) mouth_top=face_top;
 	mouth_bottom=mouth_ctr_y+mouth_size;
 	if (mouth_bottom > face_bottom) mouth_bottom=face_bottom;
-	
+
 	white_count=0;
 
 	for (y=mouth_top; y< mouth_bottom; y++){
@@ -529,12 +529,12 @@ for (y=mouth_search_start_y; y < mouth_s
 			}
 		}
 	}
-	
+
 	}
 else white_count=10;
 
 // This next section finds the face region and sets the face_* parameters.
-	
+
 	int scan;
 	float thresh=.3;
 	scan=scan_region_left+1;
@@ -546,10 +546,10 @@ else white_count=10;
 			{
 				face_left=scan;
 				break;
-			}	
+			}
 		scan++;
 	}
-	
+
 	scan=scan_region_right-1;
 	if (scan>=640) scan=639;
 	while(1)
@@ -558,10 +558,10 @@ else white_count=10;
 			{
 				face_right=scan;
 				break;
-			}	
+			}
 		scan--;
 	}
-	
+
 	scan=scan_region_top+1;
 	if (scan<0) scan=0;
 	while(1)
@@ -570,11 +570,11 @@ else white_count=10;
 			{
 				face_top=scan;
 				break;
-			}	
+			}
 		scan++;
 	}
-	
-	
+
+
 	scan=scan_region_bottom-1;
 	if (scan>=480) scan=479;
 	while(1)
@@ -583,10 +583,10 @@ else white_count=10;
 			{
 				face_bottom=scan;
 				break;
-			}	
+			}
 		scan--;
 	}
-	
+
 	// Base scan region on face region here
 	scan_region_left=face_left-10;
 	if (scan_region_left <= 0) scan_region_left=1;
@@ -596,10 +596,10 @@ else white_count=10;
 	if (scan_region_top <= 0) scan_region_top=1;
 	scan_region_bottom=face_bottom+10;
 	if (scan_region_bottom >= 480) scan_region_bottom=479;
-	
-	
+
+
 	// Calculate some stats
-	
+
 	// face size
 	width=face_right-face_left;
 	guint8 temp=width*100/640;
@@ -610,7 +610,7 @@ else white_count=10;
 	instance->face.x=temp;
 	temp=((double)100/(double)480)*(double)(face_top+face_bottom)/2;
 	instance->face.y=temp;
-	
+
 	// face angle-Z
 	instance->face.head_z_rot=face_ang+50;
 
@@ -628,24 +628,24 @@ else white_count=10;
 	if (right_eye_strad > left_eye_strad) y_ang=-y_ang;
 	temp = (guint8) 50 + y_ang;
 	instance->face.head_y_rot=temp;
-	
+
 	if (abs (temp-50) > 15) instance->face.head_size=head_size_old;
 	else head_size_old=instance->face.head_size;
 
 	temp = (guint8) 100 * white_count / WHITE_COUNT_MAX;
 	if (temp > 100) temp=100;
 	instance->face.mouth_open = temp;
-	
+
 }
-	
 
 
 
 
 
+
  // draw bounding box for either calibration or face
-	
 
+
 void SetEyeSearchRegions(void)
 {
 			if (bozo_bit==0)
@@ -654,25 +654,25 @@ void SetEyeSearchRegions(void)
 				left_eye_bottom=face_top+(.6*(face_bottom-face_top));
 				left_eye_right=((face_left+face_right)/2);
 				left_eye_left=face_left+.15*(face_right-face_left);
-			
+
 				right_eye_top=face_top+(.25*(face_bottom-face_top));
 				right_eye_bottom=face_top+(.6*(face_bottom-face_top));
 				right_eye_right=face_right-.15*(face_right-face_left);
 				right_eye_left=((face_left+face_right)/2);
 			}
-			
+
 			if (bozo_bit==1)
 			{
 				left_eye_top=left_eye_y-20;
 				left_eye_bottom=left_eye_y+20;
 				left_eye_left=left_eye_x-20;
 				left_eye_right=left_eye_x+20;
-				
+
 				right_eye_top=right_eye_y-20;
 				right_eye_bottom=right_eye_y+20;
 				right_eye_left=right_eye_x-20;
 				right_eye_right=right_eye_x+20;
-			}	
+			}
 }
 
 
@@ -681,8 +681,8 @@ void drawbox(int top, int bottom, int le
 	int y, x, j;
 
 	unsigned int col;
-	
 
+
 	if (color==1)
 		col=0x00FFFF00;
 	else
@@ -696,27 +696,27 @@ void drawbox(int top, int bottom, int le
 	if (left>=640) left=639;
 	if (right<0) right =0;
 	if (right>=640) right=639;
-	
+
 	if (color==1){
 
 	for (y=top; y<bottom; y++)
 	{
-		for (j=0;j<5;j++){	
+		for (j=0;j<5;j++){
 			colorBuf[y][left+j] =  col;
 			colorBuf[y][right-j] = col;
 		}
 
 	}
-	
+
 	for (x=left; x<right; x++)
 	{
 
 	for (j=0;j<5;j++){
-		
+
 		colorBuf[bottom-j][x] = col;
 		colorBuf[top+j][x] = col;
 
-		}	
+		}
 
 	}
 
@@ -727,7 +727,7 @@ void drawbox(int top, int bottom, int le
 
 	for (y=top; y<bottom; y++)
 	{
-		for (x=left;x<right;x++){	
+		for (x=left;x<right;x++){
 			colorBuf[y][x] =  col;
 			colorBuf[y][x] = col;
 		}
@@ -757,25 +757,25 @@ void SkinStats (PixMapHandle p, int top,
 				{
 				count++;
 				color=baseAddr[x];
-					
+
 				R = (color & 0x00FF0000) >> 16;
 				G = (color & 0x0000FF00) >> 8;
 				B = (color & 0x000000FF) >> 0;
 				Y=.253*R+.684*G+.063*B;
 				E=.5*R-.5*G;
-				S=.25*R+.25*G-.5*B; 
+				S=.25*R+.25*G-.5*B;
 				Y_sum+=Y;
 				E_sum+=E;
 				S_sum+=S;
 				}
 			}
-				
+
 		Y_mean=Y_sum/count;
 		E_mean=E_sum/count;
 		S_mean=S_sum/count;
-				
+
 		Y_sum=E_sum=S_sum=0;
-				
+
 		for (y=top; y<bottom; y++)
 			{
 			baseAddr = (UInt32*)(GetPixBaseAddr(p) + y * GetPixRowBytes(p));
@@ -787,21 +787,21 @@ void SkinStats (PixMapHandle p, int top,
 				B = (color & 0x000000FF) >> 0;
 				Y=.253*R+.684*G+.063*B;
 				E=.5*R-.5*G;
-				S=.25*R+.25*G-.5*B; 
-					
+				S=.25*R+.25*G-.5*B;
+
 				Y_sum+=(Y-Y_mean)*(Y-Y_mean);
 				E_sum+=(E-E_mean)*(E-E_mean);
 				S_sum+=(S-S_mean)*(S-S_mean);
 
 				}
 			}
-				
+
 		Y_dev=sqrt(Y_sum/(count-1));
 		E_dev=sqrt(E_sum/(count-1));
 		S_dev=sqrt(S_sum/(count-1));
-				
-		//fprintf(stderr,"Y: %f, %f\n E: %f, %f\nS: %f, %f\n",Y_mean,E_mean,S_mean,Y_dev,E_dev,S_dev);			
 
+		//fprintf(stderr,"Y: %f, %f\n E: %f, %f\nS: %f, %f\n",Y_mean,E_mean,S_mean,Y_dev,E_dev,S_dev);
+
 }
 
 int SkinDetect(double Y, double E, double S)
============================================================
--- pidgin/plugins/crazychat/cc_features.c	639451e04d96bac6ac420df14535e06029ed329a
+++ pidgin/plugins/crazychat/cc_features.c	81b67b3e08f028ff8ed9f8ca100d00299e5f9bd4
@@ -116,7 +116,7 @@ struct input_instance *init_input(struct
 
   /*pthread_t userinput_t; // should we put this in a nicer wrapper?*/
 	struct draw_info *info;
-	struct input_instance *instance; 
+	struct input_instance *instance;
 	info = (struct draw_info*)malloc(sizeof(*info));
 	assert(info);
 	memset(info, 0, sizeof(*info));
@@ -196,7 +196,7 @@ struct input_instance *init_input(struct
 	hbox = gtk_hbox_new(TRUE, 0);
 	gtk_box_pack_start(GTK_BOX(ret.vbox), hbox, FALSE, FALSE, 0);
 	gtk_widget_show(hbox);
-	
+
 	glist = NULL;
 	glist = g_list_append(glist, "Red");
 	glist = g_list_append(glist, "Dark Brown");
@@ -306,8 +306,8 @@ static gboolean config_wrapper(GtkWidget
 	/*** OpenGL BEGIN ***/
 	if (!gdk_gl_drawable_gl_begin(gldrawable, glcontext))
 		return FALSE;
-	
 
+
 /* Undo all of the Model lighting here*/
 
 //	glDisable(GL_LIGHTING);
@@ -329,8 +329,8 @@ static gboolean config_wrapper(GtkWidget
 	glLoadIdentity();
 
 
-	
-	
+
+
 	gdk_gl_drawable_gl_end(gldrawable);
 	/*** OpenGL END ***/
 
@@ -352,7 +352,7 @@ static gboolean mydraw(GtkWidget *widget
 	} else if (!strcmp(string, "Shark")) {
 		features->kind = 1;
 	}
-	
+
 	material_set(GTK_ENTRY(GTK_COMBO(instance->head)->entry),
 			&features->head_color);
 	material_set(GTK_ENTRY(GTK_COMBO(instance->appendage)->entry),
@@ -369,7 +369,7 @@ static gboolean mydraw(GtkWidget *widget
 	} else {
 		instance->face.mode = 0;
 	}
-	
+
 	if (mode_change>0){
 		mode_change--;
 		config_wrapper(widget, event, data);
@@ -392,7 +392,7 @@ static gboolean mydraw(GtkWidget *widget
 	//	fprintf(stderr, "We're fucked this time.\n");
 		return FALSE;
 	}
-	
+
 	glClearColor(0.0, 0.0, 0.0, 0.0);
 	glClear(GL_COLOR_BUFFER_BIT);
 
@@ -402,11 +402,11 @@ static gboolean mydraw(GtkWidget *widget
 		gdk_gl_drawable_swap_buffers(gldrawable);
 	else
 		glFlush();
-	
+
 	gdk_gl_drawable_gl_end(gldrawable);
-	
+
 	/*** OpenGL END ***/
-	
+
 	return TRUE;
 }
 
============================================================
--- pidgin/plugins/crazychat/cc_pidgin_plugin.c	5f8a2767a523bd564a3bc96d4df58414e91b3afe
+++ pidgin/plugins/crazychat/cc_pidgin_plugin.c	27dfa5431b084f148670f577f7b14ff43a934b87
@@ -169,7 +169,7 @@ static void cc_init(struct crazychat *cc
 static void cc_init(struct crazychat *cc)
 {
 	/* initialize main crazychat thread */
-	
+
 	assert(cc);
 	memset(cc, 0, sizeof(*cc));
 
@@ -243,7 +243,7 @@ static gboolean receive_im_cb(PurpleAcco
 		cc_net_recv_ready(account, cc, *sender);
 		return TRUE;
 	}
-	
+
 	return FALSE;
 }
 
@@ -345,7 +345,7 @@ static GtkWidget *get_config_frame(Purpl
 	button1 = gtk_radio_button_new_with_label(NULL, _("Enabled"));
 	gtk_box_pack_start(GTK_BOX(vbox), button1, TRUE, TRUE, 0);
 	gtk_widget_show(button1);
-	
+
 	group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(button1));
 	button2 = gtk_radio_button_new_with_label(group, _("Disabled"));
 	gtk_box_pack_start(GTK_BOX(vbox), button2, TRUE, TRUE, 0);
@@ -367,9 +367,9 @@ static GtkWidget *get_config_frame(Purpl
 	button = gtk_button_new_with_label("Calibrate");
 	gtk_box_pack_start(GTK_BOX(vbox), button, TRUE, FALSE, 0);
 	gtk_widget_show(button);
-	
+
 	gtk_widget_show(ret);
-	
+
 	return ret;
 }
 
@@ -451,7 +451,7 @@ static gboolean plugin_load(PurplePlugin
 	}
 
 	Debug("CrazyChat plugin loaded.\n");
-	
+
 	return TRUE;
 }
 
============================================================
--- pidgin/plugins/crazychat/cc_gtk_gl.c	0fe39b1845441b02d51774e1d367cd6e71fd4b57
+++ pidgin/plugins/crazychat/cc_gtk_gl.c	4f2fbb720aa5903b4b565285e3194c49132f03d9
@@ -137,7 +137,7 @@ GtkWidget *cc_new_gl_area(gl_init_func i
 	GtkWidget *drawing_area;
 
 	assert(data);
-	
+
 	drawing_area = gtk_drawing_area_new();
 	assert(drawing_area);
 
@@ -183,7 +183,7 @@ static gboolean configure_event(GtkWidge
 	GLfloat aspect;
 
 //	Debug("configuring\n");
-	
+
 	/*** OpenGL BEGIN ***/
 	if (!gdk_gl_drawable_gl_begin(gldrawable, glcontext))
 		return FALSE;
@@ -212,7 +212,7 @@ static int map_event(GtkWidget *widget, 
 {
 	struct draw_info *info = (struct draw_info*)data;
 	Debug("map\n");
-	
+
 	if (info->timeout) {
 		widget_draw_timer_add(widget, info);
 	}
@@ -223,7 +223,7 @@ static int unmap_event(GtkWidget *widget
 {
 	struct draw_info *info = (struct draw_info*)data;
 	Debug("unmap\n");
-	
+
 	if (info->timeout) {
 		widget_draw_timer_remove(widget, info);
 	}
@@ -235,7 +235,7 @@ static int visibility_notify_event(GtkWi
 {
 	struct draw_info *info = (struct draw_info*)data;
 	Debug("visibility\n");
-	
+
 	if (event->state == GDK_VISIBILITY_FULLY_OBSCURED) {
 		Debug("obscured\n");
 		if (info->timeout) {
@@ -280,7 +280,7 @@ static void destroy_event(GtkWidget *wid
 static void destroy_event(GtkWidget *widget, struct draw_info *data)
 {
 	Debug("destroying widget\n");
-	
+
 	if (data) {
 		widget_draw_timer_remove(widget, data);
 		free(data);
============================================================
--- pidgin/plugins/crazychat/cc_network.c	87d51ddc5e486474b0ecede2d5d057a98eea4036
+++ pidgin/plugins/crazychat/cc_network.c	3b6f9f640fc8773b18ade7007b322a5f8f178199
@@ -69,7 +69,7 @@ static void init_cc_net_session(PurpleAc
 		struct cc_session *session);
 
 /**
- * Handles checking the network for new feature data and sending out the 
+ * Handles checking the network for new feature data and sending out the
  * latest features.
  * @param session		the session we're checking for network traffic
  */
@@ -99,7 +99,7 @@ void cc_net_send_invite(struct crazychat
 	PurpleConversation *conv;
 	PurpleConvIm *im;
 	char buf[BUFSIZ];
-	
+
 	session = cc_find_session(cc, name);
 	if (session) return; /* already have a session with this guy */
 	session = cc_add_session(cc, name);
@@ -158,7 +158,7 @@ void cc_net_recv_invite(PurpleAccount *a
 
 		g_signal_connect(GTK_OBJECT(dialog), "response",
 				G_CALLBACK(invite_handler), args);
-		
+
 		gtk_widget_show_all(dialog);
 	}
 }
@@ -184,7 +184,7 @@ static void cc_net_send_ready(PurpleAcco
 static void cc_net_send_ready(PurpleAccount *account, struct cc_session *session)
 {
 	struct sock_accept_args *args;
-	
+
 	assert(session);
 	Debug("Initializing the server socket and sending ready message\n");
 	/* create the server socket */
@@ -261,7 +261,7 @@ static void invite_handler(GtkDialog *di
 	char buf[BUFSIZ];
 	PurpleConversation *conv;
 	PurpleConvIm *im;
-	
+
 	if (response == GTK_RESPONSE_ACCEPT) {
 		assert(args);
 		session = cc_find_session(args->cc, args->name);
@@ -319,7 +319,7 @@ static gboolean accept_cb(struct sock_ac
 		sock = accept(session->tcp_sock,
 				(struct sockaddr*)&client_addr, &sin_size);
 		assert(sock != -1);
-		
+
 		/* check if it's a match */
 		if (client_addr.sin_addr.s_addr == session->peer_ip) {
 			/* cool, we're set */
@@ -354,9 +354,9 @@ static void init_cc_net_session(PurpleAc
 	struct sockaddr_in my_addr;
 	struct sockaddr_in peer_addr;
 	int reuse;
-	
+
 	/* send/obtain the udp port information */
-	
+
 	assert(__send(session->tcp_sock, (char*)&session->cc->udp_port,
 			sizeof(session->cc->udp_port)) ==
 			sizeof(session->cc->udp_port));
@@ -365,14 +365,14 @@ static void init_cc_net_session(PurpleAc
 			sizeof(session->peer_port));
 
 	Debug("Established a CrazyChat session with %s!\n", session->name);
-	
+
 	/* connect the udp sockets */
-	
+
 	session->udp_sock = socket(AF_INET, SOCK_DGRAM, 0);
 
 	assert(!setsockopt(session->udp_sock, SOL_SOCKET, SO_REUSEADDR,
 			&reuse, sizeof(reuse)));
-	
+
 	my_addr.sin_family = AF_INET;
 	my_addr.sin_port = htons(session->cc->udp_port);
 	assert(inet_aton(purple_network_get_my_ip(-1),
@@ -387,7 +387,7 @@ static void init_cc_net_session(PurpleAc
 
 	Debug("Bound udp sock to port %d, connecting to port %d\n",
 		session->cc->udp_port, session->peer_port);
-	
+
 	memset(&session->features, 0, sizeof(session->features));
 
 	session->output = init_output(&session->features, session);
@@ -452,7 +452,7 @@ static gboolean network_cb(struct cc_ses
 	assert(ret != -1);
 
 	features = &session->features;
-		
+
 	while (ret) { /* have data, let's copy it for output */
 		struct sockaddr_in from;
 		int fromlen;
============================================================
--- pidgin/plugins/crazychat/cc_output.c	1bdad3af8133af0c8a0a129cf9fc5b21dc1fbff0
+++ pidgin/plugins/crazychat/cc_output.c	c0858a6412fc82cc15aa22e36417b280cb703a96
@@ -60,20 +60,20 @@ void Interpolate(struct output_instance*
 	curr_mode = NORMAL;
 	return;
 */
-	
+
 	//find z plane from percentage of face
 	if(instance->features->head_size==0){
 		z = 5;
-	}	
+	}
 
 	temp = (GLfloat)instance->features->head_size/40.0;
 	//printf("head size %d\n", instance->features->head_size);
-	
+
 	minZ = ROOT_3;
 	z = ROOT_3*(PERSONS_HEAD/temp);
 	if(z < minZ)
 		z = minZ;
-	 	
+
 	//these calculations are based on a 90 degree viewing angle
 	rangeX = z*(TAN_30)*2;
 	rangeY = window_aspect*rangeX;
@@ -87,7 +87,7 @@ void Interpolate(struct output_instance*
 		x = 0 + temp*rangeX/1.0;
 	}
 
-	temp = (GLfloat)instance->features->y;	
+	temp = (GLfloat)instance->features->y;
 
 	if(temp>50){
 		temp = (temp-50.0)/50.0;
@@ -113,14 +113,14 @@ void Interpolate(struct output_instance*
 
 	mouth_open = (float)instance->features->mouth_open/105;
 	count++;
-	//mouth_open = (count%10)/(10);	
+	//mouth_open = (count%10)/(10);
 
 	if(instance->features->left_eye_open==0){
 		left_open = FALSE;
 	}
 	else{
 		left_open = TRUE;
-	}	
+	}
 
 	if(instance->features->right_eye_open==0)
 		right_open = FALSE;
@@ -141,7 +141,7 @@ void Interpolate(struct output_instance*
 		which_face=DOG;
 	else
 		which_face=SHARK;
-	
+
 }
 
 
@@ -151,7 +151,7 @@ gboolean configure(GtkWidget *widget,
 {
 	GdkGLContext *glcontext = gtk_widget_get_gl_context(widget);
 	GdkGLDrawable *gldrawable = gtk_widget_get_gl_drawable(widget);
-	
+
 	GLfloat w = widget->allocation.width;
 	GLfloat h = widget->allocation.height;
 	GLfloat aspect;
@@ -174,7 +174,7 @@ gboolean configure(GtkWidget *widget,
 		window_aspect = h / w;
 	}
 
-	//glOrtho(-10, 10, -10,10, 0.0001, 1000); 
+	//glOrtho(-10, 10, -10,10, 0.0001, 1000);
 	gluPerspective(90.0, window_aspect, 0.0001, 1000.0);
 
 	glMatrixMode(GL_MODELVIEW);
@@ -194,7 +194,7 @@ gboolean draw(GtkWidget *widget, GdkEven
 		fprintf(stderr,"null\n");
 	}
 	assert(instance);
-	Interpolate(instance);	
+	Interpolate(instance);
 
 	GdkGLContext *glcontext = gtk_widget_get_gl_context (widget);
 	GdkGLDrawable *gldrawable = gtk_widget_get_gl_drawable (widget);
@@ -212,11 +212,11 @@ gboolean draw(GtkWidget *widget, GdkEven
 	glClearColor(1.0, 1.0, 1.0, 0.0);
 	//glDisable(GL_CULL_FACE);
 
-	glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);	
+	glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
 	glColor3f(1.0, 1.0, 1.0);
 	glMatrixMode(GL_MODELVIEW);
 	glLoadIdentity();
-	
+
 	glTranslatef(x, y, -z);
 	if(instance->my_output==LOCAL){
 		if(which_face==DOG){
@@ -226,7 +226,7 @@ gboolean draw(GtkWidget *widget, GdkEven
 		else {
 			change_materials(local_shark_face, curr_materials, DOG_SHARK_CHANGE);
 			draw_face(local_shark_face, zrot, yrot, left_open, right_open, mouth_open, dir, curr_mode);
-		}	
+		}
 	}
 	else{
 		if(which_face==DOG){
@@ -245,7 +245,7 @@ gboolean draw(GtkWidget *widget, GdkEven
 	return TRUE;
 }
 
-void init (GtkWidget *widget, void *data) 
+void init (GtkWidget *widget, void *data)
 {
 	setupDrawlists(REMOTE);
 	setupLighting(widget);
@@ -282,14 +282,14 @@ void setupLighting(GtkWidget *widget)
         //glColorMaterial(GL_FRONT, GL_AMBIENT_AND_DIFFUSE);
         glMaterialfv(GL_FRONT, GL_DIFFUSE, diffuse);
         glMateriali(GL_FRONT, GL_SHININESS, 128);
-        
+
         //glEnable(GL_CULL_FACE);
-        
+
         glClear(GL_COLOR_BUFFER_BIT);
 	glMatrixMode(GL_PROJECTION);
 	glLoadIdentity();
 	//glOrtho(-2, 2, -2, 2, 0.0001, 1000);
-	
+
 	if (w > h) {
 		window_aspect = w / h;
 	} else {
============================================================
--- pidgin/plugins/crazychat/crazychat.c	9858715878eb8ceb242cddce966148205e08ad22
+++ pidgin/plugins/crazychat/crazychat.c	a0f102358982eafaaab11389e21ac27f0c4b5503
@@ -65,7 +65,7 @@ void cc_remove_session(struct crazychat 
 void cc_remove_session(struct crazychat *cc, struct cc_session *session)
 {
 	struct cc_session_node *curr, *prev;
-	
+
 	assert(cc);
 	assert(session);
 
============================================================
--- pidgin/plugins/crazychat/dog_lids.c	a398179be65f887228f0a645d8cd8ae36d442496
+++ pidgin/plugins/crazychat/dog_lids.c	b585c18dc97997beab5477268fe4c60560b4f912
@@ -17,7 +17,7 @@ void initLids(){
 void initLids(){
 	GLint test;
 	int i;
-	
+
 	GLint[0]=Gen3DObjectListLid1();
 	GLint[1]=Gen3DObjectListLid2();
 	GLint[2]=Gen3DObjectListLid3();
============================================================
--- pidgin/plugins/crazychat/doggy.c	6217535c38d9b89ba8e09ac45784a7998d6f818d
+++ pidgin/plugins/crazychat/doggy.c	d78e2cefd0041c1c1ba95c4a9d9d4f482d77a471
@@ -21,7 +21,7 @@
 #define IRIS_Y 1.67*SCALE//.015
 #define IRIS_Z 7*SCALE//.08
 #define PUP_X 0*SCALE
-#define PUP_Y 0*SCALE 
+#define PUP_Y 0*SCALE
 #define PUP_Z 1.2*SCALE //.028
 #define IRIS_SCALE .12*SCALE
 #define PUP_SCALE .11*SCALE
@@ -113,7 +113,7 @@ void dog_eyes(FACE f, GLfloat angle, GLf
 	glTranslatef(0, 0, EYES_Y);
 	glTranslatef(0, -EYES_Z,0);
 	draw_left_eye(f, left_open, max_eye);
-	draw_right_eye(f, right_open, max_eye);	
+	draw_right_eye(f, right_open, max_eye);
 	glPopMatrix();
 }
 
@@ -156,8 +156,8 @@ void draw_dog(FACE f, GLfloat angle, GLf
 }
 
 void draw_dog(FACE f, GLfloat angle, GLfloat yangle, BOOL left_open, BOOL right_open, GLfloat open, DIRECTION dir, OUTPUT_MODE mode){
-	int next_face; 
-	struct doggy_struct* dog;	
+	int next_face;
+	struct doggy_struct* dog;
 	f->crazy_count--;
 	if(f->crazy_count==0){
 		f->my_mode = mode;
@@ -178,7 +178,7 @@ void draw_dog(FACE f, GLfloat angle, GLf
 	glRotatef(-90, 1.0, 0.0, 0.0);
 	glRotatef(-yangle, 0.0, 0.0, -1.0);
 	glRotatef(-angle, 0, 1, 0);
-	dog_eyes(f, angle, yangle, left_open, right_open, dir);	
+	dog_eyes(f, angle, yangle, left_open, right_open, dir);
 	dog_ears(f, dir);
 	glmSetMat(f->materials, f->mat_indeces[HEAD]);
 	glCallList(dog->faces[dog->curr_face]);
@@ -201,10 +201,10 @@ void init_dog(FACE f){
 	f->name = strdup("dog");
 	f->draw_func = draw_dog;
 	dog = (struct doggy_struct*)f->char_struct;
-	
+
 	printf("\nReading models: ");
 	fflush(0);
-	
+
 	//initialize the draw lists
 	init_lists(&dog->faces, &dog->m_faces, NUM_DOGS, f->name, DOG_SCALE);
 	init_lists(&dog->lids, &dog->m_lids, NUM_DOG_LIDS, "lid", LID_SCALE);
@@ -215,7 +215,7 @@ void init_dog(FACE f){
 
 	printf("\n");
 	fflush(0);
-		
+
 	dog->curr_face = 0;
 	dog->curr_ear = 1;
 	dog->curr_left_lid = 9;
============================================================
--- pidgin/plugins/crazychat/draw.c	7e1bc5491a4dfc5acffd5e4bb094b34f18cafde4
+++ pidgin/plugins/crazychat/draw.c	854cf72bcb85cdb1aa47b0f2ecc76d5deaecf63f
@@ -40,35 +40,35 @@ void CalculateMouthPoints(GLshort[][][] 
     ctrlpoints[0][0][0]=points[0][0];
     ctrlpoints[0][0][1]=points[0][1];
     ctrlpoints[0][0][2]=points[0][2];
-    
+
     ctrlpoints[0][1][0]=points[1][0];
     ctrlpoints[0][1][1]=points[1][1];
     ctrlpoints[0][1][2]=points[1][2];
-    
+
     ctrlpoints[0][2][0]=points[2][0];
     ctrlpoints[0][2][1]=points[2][1];
     ctrlpoints[0][2][2]=points[2][2];
-    
+
     ctrlpoints[1][0][0]=points[0][0];
     ctrlpoints[1][0][1]=points[0][1];
     ctrlpoints[1][0][2]=points[0][2];
-    
+
     ctrlpoints[1][1][0]=0;
     ctrlpoints[1][1][1]=0;
     ctrlpoints[1][1][2]=back;
-    
+
     ctrlpoints[1][2][0]=points[2][0];
     ctrlpoints[1][2][1]=points[2][1];
     ctrlpoints[1][2][2]=points[2][2];
-    
+
     ctrlpoints[2][0][0]=points[0][0];
     ctrlpoints[2][0][1]=points[0][1];
     ctrlpoints[2][0][2]=points[0][2];
-    
+
     ctrlpoints[2][1][0]=points[3][0];
     ctrlpoints[2][1][1]=points[3][1];
     ctrlpoints[2][1][2]=points[3][2];
-    
+
     ctrlpoints[2][2][0]=points[2][0];
     ctrlpoints[2][2][1]=points[2][1];
     ctrlpoints[2][2][2]=points[2][2];
@@ -78,7 +78,7 @@ void drawMouth(struct Packet* p)
 {
     GLshort[4][3][3] ctrlpoints;
     CalculateMouthPoints(ctrlpoints, p);
-    
+
     glMap2f(GL_MAP2_VERTEX_3, 0, 10, 3, 3, 0.0, 10.0, 9, 3, &ctrlpoints[0][0][0]);
     glEnable(GL_MAP2_VERTEX_3);
     glMapGrid2f(10, 0, 10, 10, 0, 10);
@@ -87,20 +87,20 @@ void initEyes(){
 }
 
 void initEyes(){
-	
 
+
 void drawEyes(struct Packet* p){
     GLshort eye[3][3][3];
     CalculateEyePoints(eye, p, LEFT);
     glMap2f(GL_MAP2_VERTEX_3, 0, 10, 3, 3, 0.0, 10.0, 9, 3, &eyep[0][0][0]);
     glMapGrid2f(10, 0, 10, 10, 0, 10);
     glEvalMesh2(GL_FILL, 0, 10, 0, 10);
-    
+
     CalculateEyePoints(eye, p, RIGHT);
     glMap2f(GL_MAP2_VERTEX_3, 0, 10, 3, 3, 0.0, 10.0, 9, 3, &eyep[0][0][0]);
     glMapGrid2f(10, 0, 10, 10, 0, 10);
     glEvalMesh2(GL_FILL, 0, 10, 0, 10);
-    
+
 }
 
 void drawHead(struct Packet* p){
============================================================
--- pidgin/plugins/crazychat/eye.c	c6cdb18031d1314b20eb79da2dc8ead7c30b17e9
+++ pidgin/plugins/crazychat/eye.c	0a0258ebd1de29c179d367581b9d75952fe3e6fb
@@ -1,18 +1,18 @@
 /*
-This file was produced by Deep Exploration Plugin: CPP Export filter. 
+This file was produced by Deep Exploration Plugin: CPP Export filter.
 
-Deep Exploration 
+Deep Exploration
 
-Copyright (c) 1999-2003 Right Hemisphere, Inc 
+Copyright (c) 1999-2003 Right Hemisphere, Inc
 
-WWW http://www.righthemisphere.com/dexp.htm 
+WWW http://www.righthemisphere.com/dexp.htm
 eMail support at righthemisphere.com
 */
 //#include <windows.h>
 #include <GL/gl.h>
 #include <GL/glu.h>
 
-#include <math.h> 
+#include <math.h>
 
 typedef struct sample_MATERIAL{
  GLfloat ambient[3];
============================================================
--- pidgin/plugins/crazychat/eyes.c	043376f8db3b9cc9bed868546ce4906eaa63527c
+++ pidgin/plugins/crazychat/eyes.c	b7cf5d3937a8c273e9d3feccb3cabb1fbe6ed1e6
@@ -1,11 +1,11 @@
 /*
-This file was produced by Deep Exploration Plugin: CPP Export filter. 
+This file was produced by Deep Exploration Plugin: CPP Export filter.
 
-Deep Exploration 
+Deep Exploration
 
-Copyright (c) 1999-2003 Right Hemisphere, Inc 
+Copyright (c) 1999-2003 Right Hemisphere, Inc
 
-WWW http://www.righthemisphere.com/dexp.htm 
+WWW http://www.righthemisphere.com/dexp.htm
 eMail support at righthemisphere.com
 */
 //#include <windows.h>
============================================================
--- pidgin/plugins/crazychat/face.c	9014087baecfabf26e0f79f77475eb2ba64a60f6
+++ pidgin/plugins/crazychat/face.c	daeb40e926ccaacf3262c175f0db1ddc57fc576f
@@ -10,7 +10,7 @@ FACE init_face(KIND kind)
 
 	switch(kind){
 		case DOG:
-			init_dog(face);			
+			init_dog(face);
 			break;
 		case SHARK:
 			init_shark(face);
@@ -19,8 +19,8 @@ FACE init_face(KIND kind)
 			printf("default face\n");
 			init_dog(face);
 			break;
-	}			
-	return face;	
+	}
+	return face;
 }
 
 void draw_face(FACE face, GLfloat zrot, GLfloat yrot, BOOL left_eye, BOOL right_eye, GLfloat mouth_open, DIRECTION dir, OUTPUT_MODE mode){
============================================================
--- pidgin/plugins/crazychat/filter.c	e40ab29f6a863903c17dec367662d29323e8ac37
+++ pidgin/plugins/crazychat/filter.c	ade7081a075472e6b27cf6b01f14cd42e609a810
@@ -39,9 +39,9 @@ features->head_size=(guint8) ( (coef_0*(
 features->head_size=(guint8) ( (coef_0*(f->head_size[0]+f->head_size[9]))+(coef_1*(f->head_size[1]+f->head_size[8])) +
 			(coef_2*(f->head_size[2]+f->head_size[7])) + (coef_3*(f->head_size[3]+f->head_size[6]))
 				+ (coef_4*(f->head_size[4]+f->head_size[5])));
-				
 
-				
+
+
 f->head_z_rot[9]=f->head_z_rot[8];
 f->head_z_rot[8]=f->head_z_rot[7];
 f->head_z_rot[7]=f->head_z_rot[6];
@@ -57,7 +57,7 @@ features->head_z_rot=(guint8) ( (coef_0*
 			(coef_2*(f->head_z_rot[2]+f->head_z_rot[7])) + (coef_3*(f->head_z_rot[3]+f->head_z_rot[6]))
 				+ (coef_4*(f->head_z_rot[4]+f->head_z_rot[5])));
 
-				
+
 f->head_y_rot[9]=f->head_y_rot[8];
 f->head_y_rot[8]=f->head_y_rot[7];
 f->head_y_rot[7]=f->head_y_rot[6];
@@ -71,9 +71,9 @@ features->head_y_rot=(guint8) ( (coef_0*
 
 features->head_y_rot=(guint8) ( (coef_0*(f->head_y_rot[0]+f->head_y_rot[9]))+(coef_1*(f->head_y_rot[1]+f->head_y_rot[8])) +
 			(coef_2*(f->head_y_rot[2]+f->head_y_rot[7])) + (coef_3*(f->head_y_rot[3]+f->head_y_rot[6]))
-				+ (coef_4*(f->head_y_rot[4]+f->head_y_rot[5])));				
- 
+				+ (coef_4*(f->head_y_rot[4]+f->head_y_rot[5])));
 
+
 f->xfilt[9]=f->xfilt[8];
 f->xfilt[8]=f->xfilt[7];
 f->xfilt[7]=f->xfilt[6];
@@ -88,8 +88,8 @@ features->x=(guint8) ( (coef_0*(f->xfilt
 features->x=(guint8) ( (coef_0*(f->xfilt[0]+f->xfilt[9]))+(coef_1*(f->xfilt[1]+f->xfilt[8])) +
 			(coef_2*(f->xfilt[2]+f->xfilt[7])) + (coef_3*(f->xfilt[3]+f->xfilt[6]))
 				+ (coef_4*(f->xfilt[4]+f->xfilt[5])));
-				
-				
+
+
 f->yfilt[9]=f->yfilt[8];
 f->yfilt[8]=f->yfilt[7];
 f->yfilt[7]=f->yfilt[6];
@@ -104,8 +104,8 @@ features->y=(guint8) ( (coef_0*(f->yfilt
 features->y=(guint8) ( (coef_0*(f->yfilt[0]+f->yfilt[9]))+(coef_1*(f->yfilt[1]+f->yfilt[8])) +
 			(coef_2*(f->yfilt[2]+f->yfilt[7])) + (coef_3*(f->yfilt[3]+f->yfilt[6]))
 				+ (coef_4*(f->yfilt[4]+f->yfilt[5])));
-				
-				
+
+
 f->mouth_open[9]=f->mouth_open[8];
 f->mouth_open[8]=f->mouth_open[7];
 f->mouth_open[7]=f->mouth_open[6];
@@ -119,6 +119,6 @@ features->mouth_open=(guint8) ( (coef_0*
 
 features->mouth_open=(guint8) ( (coef_0*(f->mouth_open[0]+f->mouth_open[9]))+(coef_1*(f->mouth_open[1]+f->mouth_open[8])) +
 			(coef_2*(f->mouth_open[2]+f->mouth_open[7])) + (coef_3*(f->mouth_open[3]+f->mouth_open[6]))
-				+ (coef_4*(f->mouth_open[4]+f->mouth_open[5])));				
-				
+				+ (coef_4*(f->mouth_open[4]+f->mouth_open[5])));
+
 }
============================================================
--- pidgin/plugins/crazychat/glm.c	446f2a6f994f33331973847f71b36e3aeb5dfa25
+++ pidgin/plugins/crazychat/glm.c	77ea6a2c5749022b6927b3097f1440600e64bcca
@@ -1,4 +1,4 @@
-/*    
+/*
       glm.c
  */
 
@@ -25,7 +25,7 @@ static GLfloat
 
 /* glmMax: returns the maximum of two floats */
 static GLfloat
-glmMax(GLfloat a, GLfloat b) 
+glmMax(GLfloat a, GLfloat b)
 {
   if (b > a)
     return b;
@@ -92,14 +92,14 @@ glmNormalize(GLfloat* v)
  * that works fairly well is 0.000001.
  *
  * u - array of 3 GLfloats (GLfloat u[3])
- * v - array of 3 GLfloats (GLfloat v[3]) 
+ * v - array of 3 GLfloats (GLfloat v[3])
  */
 static GLboolean
 glmEqual(GLfloat* u, GLfloat* v, GLfloat epsilon)
 {
   if (glmAbs(u[0] - v[0]) < epsilon &&
       glmAbs(u[1] - v[1]) < epsilon &&
-      glmAbs(u[2] - v[2]) < epsilon) 
+      glmAbs(u[2] - v[2]) < epsilon)
   {
     return GL_TRUE;
   }
@@ -111,7 +111,7 @@ glmEqual(GLfloat* u, GLfloat* v, GLfloat
  *
  * vectors    - array of GLfloat[3]'s to be welded
  * numvectors - number of GLfloat[3]'s in vectors
- * epsilon    - maximum difference between vectors 
+ * epsilon    - maximum difference between vectors
  *
  */
 GLfloat*
@@ -534,11 +534,11 @@ glmWriteMTL(GLMmodel* model, char* model
   for (i = 0; i < model->nummaterials; i++) {
     material = &model->materials[i];
     fprintf(file, "newmtl %s\n", material->name);
-    fprintf(file, "Ka %f %f %f\n", 
+    fprintf(file, "Ka %f %f %f\n",
 	    material->ambient[0], material->ambient[1], material->ambient[2]);
-    fprintf(file, "Kd %f %f %f\n", 
+    fprintf(file, "Kd %f %f %f\n",
 	    material->diffuse[0], material->diffuse[1], material->diffuse[2]);
-    fprintf(file, "Ks %f %f %f\n", 
+    fprintf(file, "Ks %f %f %f\n",
 	    material->specular[0],material->specular[1],material->specular[2]);
     fprintf(file, "Ns %f\n", material->shininess / 128.0 * 1000.0);
     fprintf(file, "\n");
@@ -552,10 +552,10 @@ glmWriteMTL(GLMmodel* model, char* model
  * statistics of the model (such as #vertices, #normals, etc)
  *
  * model - properly initialized GLMmodel structure
- * file  - (fopen'd) file descriptor 
+ * file  - (fopen'd) file descriptor
  */
 static GLvoid
-glmFirstPass(GLMmodel* model, FILE* file) 
+glmFirstPass(GLMmodel* model, FILE* file)
 {
   GLuint    numvertices;		/* number of vertices in model */
   GLuint    numnormals;			/* number of normals in model */
@@ -692,10 +692,10 @@ glmFirstPass(GLMmodel* model, FILE* file
  * the data.
  *
  * model - properly initialized GLMmodel structure
- * file  - (fopen'd) file descriptor 
+ * file  - (fopen'd) file descriptor
  */
 static GLvoid
-glmSecondPass(GLMmodel* model, FILE* file) 
+glmSecondPass(GLMmodel* model, FILE* file)
 {
   GLuint    numvertices;		/* number of vertices in model */
   GLuint    numnormals;			/* number of normals in model */
@@ -729,21 +729,21 @@ glmSecondPass(GLMmodel* model, FILE* fil
     case 'v':				/* v, vn, vt */
       switch(buf[1]) {
       case '\0':			/* vertex */
-	fscanf(file, "%f %f %f", 
-	       &vertices[3 * numvertices + 0], 
-	       &vertices[3 * numvertices + 1], 
+	fscanf(file, "%f %f %f",
+	       &vertices[3 * numvertices + 0],
+	       &vertices[3 * numvertices + 1],
 	       &vertices[3 * numvertices + 2]);
 	numvertices++;
 	break;
       case 'n':				/* normal */
-	fscanf(file, "%f %f %f", 
+	fscanf(file, "%f %f %f",
 	       &normals[3 * numnormals + 0],
-	       &normals[3 * numnormals + 1], 
+	       &normals[3 * numnormals + 1],
 	       &normals[3 * numnormals + 2]);
 	numnormals++;
 	break;
       case 't':				/* texcoord */
-	fscanf(file, "%f %f", 
+	fscanf(file, "%f %f",
 	       &texcoords[2 * numtexcoords + 0],
 	       &texcoords[2 * numtexcoords + 1]);
 	numtexcoords++;
@@ -888,7 +888,7 @@ glmSecondPass(GLMmodel* model, FILE* fil
  * scaling it to fit in a unit cube around the origin.  Modelurns the
  * scalefactor used.
  *
- * model - properly initialized GLMmodel structure 
+ * model - properly initialized GLMmodel structure
  */
 GLfloat
 glmUnitize(GLMmodel* model)
@@ -945,7 +945,7 @@ glmUnitize(GLMmodel* model)
     model->vertices[3 * i + 0] *= scale;
     model->vertices[3 * i + 1] *= scale;
     model->vertices[3 * i + 2] *= scale;
-*/  
+*/
   }
 
   return scale;
@@ -995,7 +995,7 @@ glmDimensions(GLMmodel* model, GLfloat* 
 }
 
 /* glmScale: Scales a model by a given amount.
- * 
+ *
  * model - properly initialized GLMmodel structure
  * scale - scalefactor (0.5 = half as large, 2.0 = twice as large)
  */
@@ -1014,8 +1014,8 @@ glmScale(GLMmodel* model, GLfloat scale)
 /* glmReverseWinding: Reverse the polygon winding for all polygons in
  * this model.  Default winding is counter-clockwise.  Also changes
  * the direction of the normals.
- * 
- * model - properly initialized GLMmodel structure 
+ *
+ * model - properly initialized GLMmodel structure
  */
 GLvoid
 glmReverseWinding(GLMmodel* model)
@@ -1069,7 +1069,7 @@ glmFacetNormals(GLMmodel* model)
   GLuint  i;
   GLfloat u[3];
   GLfloat v[3];
-  
+
   assert(model);
   assert(model->vertices);
 
@@ -1151,7 +1151,7 @@ glmVertexNormals(GLMmodel* model, GLfloa
   members = (GLMnode**)malloc(sizeof(GLMnode*) * (model->numvertices + 1));
   for (i = 1; i <= model->numvertices; i++)
     members[i] = NULL;
-  
+
   /* for every triangle, create a node for each vertex in it */
   for (i = 0; i < model->numtriangles; i++) {
     node = (GLMnode*)malloc(sizeof(GLMnode));
@@ -1224,11 +1224,11 @@ glmVertexNormals(GLMmodel* model, GLfloa
 	  T(node->index).nindices[2] = avg;
       } else {
 	/* if this node wasn't averaged, use the facet normal */
-	model->normals[3 * numnormals + 0] = 
+	model->normals[3 * numnormals + 0] =
 	  model->facetnorms[3 * T(node->index).findex + 0];
-	model->normals[3 * numnormals + 1] = 
+	model->normals[3 * numnormals + 1] =
 	  model->facetnorms[3 * T(node->index).findex + 1];
-	model->normals[3 * numnormals + 2] = 
+	model->normals[3 * numnormals + 2] =
 	  model->facetnorms[3 * T(node->index).findex + 2];
 	if (T(node->index).vindices[0] == i)
 	  T(node->index).nindices[0] = numnormals;
@@ -1241,7 +1241,7 @@ glmVertexNormals(GLMmodel* model, GLfloa
       node = node->next;
     }
   }
-  
+
   model->numnormals = numnormals - 1;
 
   /* free the member information */
@@ -1283,16 +1283,16 @@ glmLinearTexture(GLMmodel* model)
   GLfloat dimensions[3];
   GLfloat x, y, scalefactor;
   GLuint i;
-  
+
   assert(model);
 
   if (model->texcoords)
     free(model->texcoords);
   model->numtexcoords = model->numvertices;
   model->texcoords=(GLfloat*)malloc(sizeof(GLfloat)*2*(model->numtexcoords+1));
-  
+
   glmDimensions(model, dimensions);
-  scalefactor = 2.0 / 
+  scalefactor = 2.0 /
     glmAbs(glmMax(glmMax(dimensions[0], dimensions[1]), dimensions[2]));
 
   /* do the calculations */
@@ -1302,7 +1302,7 @@ glmLinearTexture(GLMmodel* model)
     model->texcoords[2 * i + 0] = (x + 1.0) / 2.0;
     model->texcoords[2 * i + 1] = (y + 1.0) / 2.0;
   }
-  
+
   /* go through and put texture coordinate indices in all the triangles */
   group = model->groups;
   while(group) {
@@ -1310,7 +1310,7 @@ glmLinearTexture(GLMmodel* model)
       T(group->triangles[i]).tindices[0] = T(group->triangles[i]).vindices[0];
       T(group->triangles[i]).tindices[1] = T(group->triangles[i]).vindices[1];
       T(group->triangles[i]).tindices[2] = T(group->triangles[i]).vindices[2];
-    }    
+    }
     group = group->next;
   }
 
@@ -1337,7 +1337,7 @@ glmSpheremapTexture(GLMmodel* model)
   GLMgroup* group;
   GLfloat theta, phi, rho, x, y, z, r;
   GLuint i;
-  
+
   assert(model);
   assert(model->normals);
 
@@ -1345,14 +1345,14 @@ glmSpheremapTexture(GLMmodel* model)
     free(model->texcoords);
   model->numtexcoords = model->numnormals;
   model->texcoords=(GLfloat*)malloc(sizeof(GLfloat)*2*(model->numtexcoords+1));
-     
+
   for (i = 1; i <= model->numnormals; i++) {
     z = model->normals[3 * i + 0];	/* re-arrange for pole distortion */
     y = model->normals[3 * i + 1];
     x = model->normals[3 * i + 2];
     r = sqrt((x * x) + (y * y));
     rho = sqrt((r * r) + (z * z));
-      
+
     if(r == 0.0) {
 	theta = 0.0;
 	phi = 0.0;
@@ -1367,11 +1367,11 @@ glmSpheremapTexture(GLMmodel* model)
       else
 	theta = asin(y / r) + (3.14159265 / 2.0);
     }
-    
+
     model->texcoords[2 * i + 0] = theta / 3.14159265;
     model->texcoords[2 * i + 1] = phi / 3.14159265;
   }
-  
+
   /* go through and put texcoord indices in all the triangles */
   group = model->groups;
   while(group) {
@@ -1423,9 +1423,9 @@ glmDelete(GLMmodel* model)
  * Modelurns a pointer to the created object which should be free'd with
  * glmDelete().
  *
- * filename - name of the file containing the Wavefront .OBJ format data.  
+ * filename - name of the file containing the Wavefront .OBJ format data.
  */
-GLMmodel* 
+GLMmodel*
 glmReadOBJ(char* filename)
 {
   GLMmodel* model;
@@ -1504,8 +1504,8 @@ fflush(NULL);
  *            GLM_TEXTURE  -  render with texture coords
  *            GLM_COLOR    -  render with colors (color material)
  *            GLM_MATERIAL -  render with materials
- *            GLM_COLOR and GLM_MATERIAL should not both be specified.  
- *            GLM_FLAT and GLM_SMOOTH should not both be specified.  
+ *            GLM_COLOR and GLM_MATERIAL should not both be specified.
+ *            GLM_FLAT and GLM_SMOOTH should not both be specified.
  */
 GLvoid
 glmWriteOBJ(GLMmodel* model, char* filename, GLuint mode)
@@ -1581,7 +1581,7 @@ glmWriteOBJ(GLMmodel* model, char* filen
   fprintf(file, "\n");
   fprintf(file, "# %d vertices\n", model->numvertices);
   for (i = 1; i <= model->numvertices; i++) {
-    fprintf(file, "v %f %f %f\n", 
+    fprintf(file, "v %f %f %f\n",
 	    model->vertices[3 * i + 0],
 	    model->vertices[3 * i + 1],
 	    model->vertices[3 * i + 2]);
@@ -1592,7 +1592,7 @@ glmWriteOBJ(GLMmodel* model, char* filen
     fprintf(file, "\n");
     fprintf(file, "# %d normals\n", model->numnormals);
     for (i = 1; i <= model->numnormals; i++) {
-      fprintf(file, "vn %f %f %f\n", 
+      fprintf(file, "vn %f %f %f\n",
 	      model->normals[3 * i + 0],
 	      model->normals[3 * i + 1],
 	      model->normals[3 * i + 2]);
@@ -1601,7 +1601,7 @@ glmWriteOBJ(GLMmodel* model, char* filen
     fprintf(file, "\n");
     fprintf(file, "# %d normals\n", model->numfacetnorms);
     for (i = 1; i <= model->numnormals; i++) {
-      fprintf(file, "vn %f %f %f\n", 
+      fprintf(file, "vn %f %f %f\n",
 	      model->facetnorms[3 * i + 0],
 	      model->facetnorms[3 * i + 1],
 	      model->facetnorms[3 * i + 2]);
@@ -1613,7 +1613,7 @@ glmWriteOBJ(GLMmodel* model, char* filen
     fprintf(file, "\n");
     fprintf(file, "# %d texcoords\n", model->texcoords);
     for (i = 1; i <= model->numtexcoords; i++) {
-      fprintf(file, "vt %f %f\n", 
+      fprintf(file, "vt %f %f\n",
 	      model->texcoords[2 * i + 0],
 	      model->texcoords[2 * i + 1]);
     }
@@ -1632,8 +1632,8 @@ glmWriteOBJ(GLMmodel* model, char* filen
     for (i = 0; i < group->numtriangles; i++) {
       if (mode & GLM_SMOOTH && mode & GLM_TEXTURE) {
 	fprintf(file, "f %d/%d/%d %d/%d/%d %d/%d/%d\n",
-		T(group->triangles[i]).vindices[0], 
-		T(group->triangles[i]).nindices[0], 
+		T(group->triangles[i]).vindices[0],
+		T(group->triangles[i]).nindices[0],
 		T(group->triangles[i]).tindices[0],
 		T(group->triangles[i]).vindices[1],
 		T(group->triangles[i]).nindices[1],
@@ -1663,11 +1663,11 @@ glmWriteOBJ(GLMmodel* model, char* filen
 		T(group->triangles[i]).nindices[0],
 		T(group->triangles[i]).vindices[1],
 		T(group->triangles[i]).nindices[1],
-		T(group->triangles[i]).vindices[2], 
+		T(group->triangles[i]).vindices[2],
 		T(group->triangles[i]).nindices[2]);
       } else if (mode & GLM_FLAT) {
 	fprintf(file, "f %d//%d %d//%d %d//%d\n",
-		T(group->triangles[i]).vindices[0], 
+		T(group->triangles[i]).vindices[0],
 		T(group->triangles[i]).findex,
 		T(group->triangles[i]).vindices[1],
 		T(group->triangles[i]).findex,
@@ -1698,8 +1698,8 @@ glmWriteOBJ(GLMmodel* model, char* filen
  *            GLM_TEXTURE  -  render with texture coords
  *            GLM_COLOR    -  render with colors (color material)
  *            GLM_MATERIAL -  render with materials
- *            GLM_COLOR and GLM_MATERIAL should not both be specified.  
- *            GLM_FLAT and GLM_SMOOTH should not both be specified.  
+ *            GLM_COLOR and GLM_MATERIAL should not both be specified.
+ *            GLM_FLAT and GLM_SMOOTH should not both be specified.
  */
 GLvoid
 glmDraw(GLMmodel* model, GLuint mode)
@@ -1778,25 +1778,25 @@ glmDraw(GLMmodel* model, GLuint mode)
 
       if (mode & GLM_FLAT)
 	glNormal3fv(&model->facetnorms[3 * triangle->findex]);
-      
+
       if (mode & GLM_SMOOTH)
 	glNormal3fv(&model->normals[3 * triangle->nindices[0]]);
       if (mode & GLM_TEXTURE)
 	glTexCoord2fv(&model->texcoords[2 * triangle->tindices[0]]);
       glVertex3fv(&model->vertices[3 * triangle->vindices[0]]);
-      
+
       if (mode & GLM_SMOOTH)
 	glNormal3fv(&model->normals[3 * triangle->nindices[1]]);
       if (mode & GLM_TEXTURE)
 	glTexCoord2fv(&model->texcoords[2 * triangle->tindices[1]]);
       glVertex3fv(&model->vertices[3 * triangle->vindices[1]]);
-      
+
       if (mode & GLM_SMOOTH)
 	glNormal3fv(&model->normals[3 * triangle->nindices[2]]);
       if (mode & GLM_TEXTURE)
 	glTexCoord2fv(&model->texcoords[2 * triangle->tindices[2]]);
       glVertex3fv(&model->vertices[3 * triangle->vindices[2]]);
-      
+
     }
     glEnd();
 
@@ -1815,7 +1815,7 @@ glmDraw(GLMmodel* model, GLuint mode)
  *            GLM_TEXTURE  -  render with texture coords
  *            GLM_COLOR    -  render with colors (color material)
  *            GLM_MATERIAL -  render with materials
- *            GLM_COLOR and GLM_MATERIAL should not both be specified.  
+ *            GLM_COLOR and GLM_MATERIAL should not both be specified.
  * GLM_FLAT and GLM_SMOOTH should not both be specified.  */
 GLuint
 glmList(GLMmodel* model, GLuint mode)
@@ -1852,7 +1852,7 @@ glmWeld(GLMmodel* model, GLfloat epsilon
   copies = glmWeldVectors(vectors, &numvectors, epsilon);
 
 #if 0
-  printf("glmWeld(): %d redundant vertices.\n", 
+  printf("glmWeld(): %d redundant vertices.\n",
 	 model->numvertices - numvectors - 1);
 #endif
 
@@ -1867,7 +1867,7 @@ glmWeld(GLMmodel* model, GLfloat epsilon
 
   /* allocate space for the new vertices */
   model->numvertices = numvectors;
-  model->vertices = (GLfloat*)malloc(sizeof(GLfloat) * 
+  model->vertices = (GLfloat*)malloc(sizeof(GLfloat) *
 				     3 * (model->numvertices + 1));
 
   /* copy the optimized vertices into the actual vertex list */
@@ -1888,7 +1888,7 @@ glmWeld(GLMmodel* model, GLfloat epsilon
   vectors    = model->normals;
   copies = glmOptimizeVectors(vectors, &numvectors);
 
-  printf("glmOptimize(): %d redundant normals.\n", 
+  printf("glmOptimize(): %d redundant normals.\n",
 	 model->numnormals - numvectors);
 
   for (i = 0; i < model->numtriangles; i++) {
@@ -1902,7 +1902,7 @@ glmWeld(GLMmodel* model, GLfloat epsilon
 
   /* allocate space for the new normals */
   model->numnormals = numvectors;
-  model->normals = (GLfloat*)malloc(sizeof(GLfloat) * 
+  model->normals = (GLfloat*)malloc(sizeof(GLfloat) *
 				    3 * (model->numnormals + 1));
 
   /* copy the optimized vertices into the actual vertex list */
@@ -1921,7 +1921,7 @@ glmWeld(GLMmodel* model, GLfloat epsilon
   vectors    = model->texcoords;
   copies = glmOptimizeVectors(vectors, &numvectors);
 
-  printf("glmOptimize(): %d redundant texcoords.\n", 
+  printf("glmOptimize(): %d redundant texcoords.\n",
 	 model->numtexcoords - numvectors);
 
   for (i = 0; i < model->numtriangles; i++) {
@@ -1935,7 +1935,7 @@ glmWeld(GLMmodel* model, GLfloat epsilon
 
   /* allocate space for the new texcoords */
   model->numtexcoords = numvectors;
-  model->texcoords = (GLfloat*)malloc(sizeof(GLfloat) * 
+  model->texcoords = (GLfloat*)malloc(sizeof(GLfloat) *
 				      2 * (model->numtexcoords + 1));
 
   /* copy the optimized vertices into the actual vertex list */
@@ -1955,8 +1955,8 @@ glmWeld(GLMmodel* model, GLfloat epsilon
   /* look for unused texcoords */
   for (i = 1; i <= model->numvertices; i++) {
     for (j = 0; j < model->numtriangles; i++) {
-      if (T(j).vindices[0] == i || 
-	  T(j).vindices[1] == i || 
+      if (T(j).vindices[0] == i ||
+	  T(j).vindices[1] == i ||
 	  T(j).vindices[1] == i)
 	break;
     }
============================================================
--- pidgin/plugins/crazychat/main.c	546517dd96af2f5ed0f3e4e3284916705d64ae68
+++ pidgin/plugins/crazychat/main.c	82b5e541b39bfba4314fd700eb8c50c4eaa9abcc
@@ -16,7 +16,7 @@ int main(void)
 
 
 int main(void)
-{	
+{
     EnterMovies();
     CamProc(); // change this prototype-> no windows
     fprintf(stderr, "you have just murdered 1000 people.");
============================================================
--- pidgin/plugins/crazychat/models.c	19f6e8e6ad36a0dac214460eac8214ca0de72822
+++ pidgin/plugins/crazychat/models.c	b79c3c24c7fad81a01f44b44e6a4fc7b2d6c9968
@@ -11,9 +11,9 @@ void init_lists(GLint** lists, GLMmodel*
 	GLint* temp_lists;
 	GLMmodel** temp_models;
 	char* temp = (char*)malloc(sizeof(char) * (strlen(name) + strlen(".obj" + 3)));
-	GLMmodel* model;	
+	GLMmodel* model;
 	float dum;
-	temp_lists = (GLint*)malloc(sizeof(GLint) * num_lists);	
+	temp_lists = (GLint*)malloc(sizeof(GLint) * num_lists);
 	temp_models = (GLMmodel**)malloc(sizeof(GLMmodel*) * num_lists);
 
 	for(i=0;i<num_lists;i++) {
@@ -38,7 +38,7 @@ void init_lists(GLint** lists, GLMmodel*
 
 	*lists = temp_lists;
 	*models = temp_models;
-	free(temp);	
+	free(temp);
 }
 
 int compute_lid(BOOL open, int curr_lid, int max){
@@ -51,7 +51,7 @@ int compute_lid(BOOL open, int curr_lid,
 	}
 	else {
 		if(curr_lid >=2){
-			curr_lid-=2;	
+			curr_lid-=2;
 		}
 		else if(curr_lid==1){
 			curr_lid--;
============================================================
--- pidgin/plugins/crazychat/sharky.c	eeb92be58091f4afa6b3fab43e61236705b7b711
+++ pidgin/plugins/crazychat/sharky.c	22ddb625c4bd6680f3147fcdc493def9a453a033
@@ -21,7 +21,7 @@
 #define SHARK_IRIS_Y 1.67*SHARK_SCALE//.015
 #define SHARK_IRIS_Z 5.0*SHARK_SCALE//.08
 #define SHARK_PUP_X 0*SHARK_SCALE
-#define SHARK_PUP_Y 0*SHARK_SCALE 
+#define SHARK_PUP_Y 0*SHARK_SCALE
 #define SHARK_PUP_Z 2.5*SHARK_SCALE //.028
 #define SHARK_IRIS_SCALE .10*SHARK_SCALE
 #define SHARK_PUP_SCALE .08*SHARK_SCALE
@@ -120,7 +120,7 @@ void shark_eyes(FACE f, GLfloat angle, G
 	glTranslatef(0, 0, SHARK_EYES_Y);
 	glTranslatef(0, -SHARK_EYES_Z,0);
 	draw_shark_left_eye(f, left_open, max_eye);
-	draw_shark_right_eye(f, right_open, max_eye);	
+	draw_shark_right_eye(f, right_open, max_eye);
 	glPopMatrix();
 }
 
@@ -171,12 +171,12 @@ void draw_back_fins(FACE f){
 	glmSetMat(f->materials, f->mat_indeces[APPENDAGE]);
 	glCallList(shark->fins[2]);
 	glPopMatrix();
-	
+
 }
 
 void draw_shark(FACE f, GLfloat angle, GLfloat yangle, BOOL left_open, BOOL right_open, GLfloat open, DIRECTION dir, OUTPUT_MODE mode){
-	int next_face; 
-	struct shark_struct* shark;	
+	int next_face;
+	struct shark_struct* shark;
 
 	f->crazy_count--;
 	if(f->crazy_count==0){
@@ -198,7 +198,7 @@ void draw_shark(FACE f, GLfloat angle, G
 	glRotatef(-90, 1.0, 0.0, 0.0);
 	glRotatef(-yangle, 0.0, 0.0, -1.0);
 	glRotatef(-angle, 0, 1, 0);
-	shark_eyes(f, angle, yangle, left_open, right_open, dir);	
+	shark_eyes(f, angle, yangle, left_open, right_open, dir);
 	shark_fins(f, dir);
 	//draw_back_fins(f);
 	glmSetMat(f->materials, f->mat_indeces[HEAD]);
@@ -223,10 +223,10 @@ void init_shark(FACE f){
 	f->name = strdup("sharky");
 	f->draw_func = draw_shark;
 	shark = (struct shark_struct*)f->char_struct;
-	
+
 	printf("\nReading models: ");
 	fflush(0);
-	
+
 	//initialize the draw lists
 	init_lists(&shark->faces, &shark->m_faces, NUM_SHARKS, f->name, SHARK_HEAD_SCALE);
 	init_lists(&shark->lids, &shark->m_lids, NUM_SHARK_LIDS, "sharkylid", SHARK_LID_SCALE);
@@ -237,7 +237,7 @@ void init_shark(FACE f){
 
 	printf("\n");
 	fflush(0);
-		
+
 	shark->curr_face = 0;
 	shark->curr_fin = 1;
 	shark->curr_left_lid = 0;
============================================================
--- libpurple/protocols/gg/lib/common.c	665a2a017a163a481f8c5527e08fde52ca82fb45
+++ libpurple/protocols/gg/lib/common.c	874343ee35ecf4f71d96ba9c330e076bd7e3d055
@@ -436,7 +436,7 @@ void gg_chomp(char *line)
  * Zamienia znaki niedrukowalne, spoza ASCII i maj?ce specjalne znaczenie
  * dla protoko?u HTTP na encje postaci \c %XX, gdzie \c XX jest szesnastkow?
  * warto?ci? znaku.
- * 
+ *
  * \param str Ci?g znak?w do zakodowania
  *
  * \return Zaalokowany bufor lub \c NULL w przypadku b??du.
@@ -825,22 +825,22 @@ static const uint16_t table_cp1250[] = {
  * \internal Tablica konwersji mi?dzy CP1250 a UTF-8.
  */
 static const uint16_t table_cp1250[] = {
-	0x20ac, '?',    0x201a,    '?', 0x201e, 0x2026, 0x2020, 0x2021, 
-	   '?', 0x2030, 0x0160, 0x2039, 0x015a, 0x0164, 0x017d, 0x0179, 
-	   '?', 0x2018, 0x2019, 0x201c, 0x201d, 0x2022, 0x2013, 0x2014, 
-	   '?', 0x2122, 0x0161, 0x203a, 0x015b, 0x0165, 0x017e, 0x017a, 
-	0x00a0, 0x02c7, 0x02d8, 0x0141, 0x00a4, 0x0104, 0x00a6, 0x00a7, 
-	0x00a8, 0x00a9, 0x015e, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x017b, 
-	0x00b0, 0x00b1, 0x02db, 0x0142, 0x00b4, 0x00b5, 0x00b6, 0x00b7, 
-	0x00b8, 0x0105, 0x015f, 0x00bb, 0x013d, 0x02dd, 0x013e, 0x017c, 
-	0x0154, 0x00c1, 0x00c2, 0x0102, 0x00c4, 0x0139, 0x0106, 0x00c7, 
-	0x010c, 0x00c9, 0x0118, 0x00cb, 0x011a, 0x00cd, 0x00ce, 0x010e, 
-	0x0110, 0x0143, 0x0147, 0x00d3, 0x00d4, 0x0150, 0x00d6, 0x00d7, 
-	0x0158, 0x016e, 0x00da, 0x0170, 0x00dc, 0x00dd, 0x0162, 0x00df, 
-	0x0155, 0x00e1, 0x00e2, 0x0103, 0x00e4, 0x013a, 0x0107, 0x00e7, 
-	0x010d, 0x00e9, 0x0119, 0x00eb, 0x011b, 0x00ed, 0x00ee, 0x010f, 
-	0x0111, 0x0144, 0x0148, 0x00f3, 0x00f4, 0x0151, 0x00f6, 0x00f7, 
-	0x0159, 0x016f, 0x00fa, 0x0171, 0x00fc, 0x00fd, 0x0163, 0x02d9, 
+	0x20ac, '?',    0x201a,    '?', 0x201e, 0x2026, 0x2020, 0x2021,
+	   '?', 0x2030, 0x0160, 0x2039, 0x015a, 0x0164, 0x017d, 0x0179,
+	   '?', 0x2018, 0x2019, 0x201c, 0x201d, 0x2022, 0x2013, 0x2014,
+	   '?', 0x2122, 0x0161, 0x203a, 0x015b, 0x0165, 0x017e, 0x017a,
+	0x00a0, 0x02c7, 0x02d8, 0x0141, 0x00a4, 0x0104, 0x00a6, 0x00a7,
+	0x00a8, 0x00a9, 0x015e, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x017b,
+	0x00b0, 0x00b1, 0x02db, 0x0142, 0x00b4, 0x00b5, 0x00b6, 0x00b7,
+	0x00b8, 0x0105, 0x015f, 0x00bb, 0x013d, 0x02dd, 0x013e, 0x017c,
+	0x0154, 0x00c1, 0x00c2, 0x0102, 0x00c4, 0x0139, 0x0106, 0x00c7,
+	0x010c, 0x00c9, 0x0118, 0x00cb, 0x011a, 0x00cd, 0x00ce, 0x010e,
+	0x0110, 0x0143, 0x0147, 0x00d3, 0x00d4, 0x0150, 0x00d6, 0x00d7,
+	0x0158, 0x016e, 0x00da, 0x0170, 0x00dc, 0x00dd, 0x0162, 0x00df,
+	0x0155, 0x00e1, 0x00e2, 0x0103, 0x00e4, 0x013a, 0x0107, 0x00e7,
+	0x010d, 0x00e9, 0x0119, 0x00eb, 0x011b, 0x00ed, 0x00ee, 0x010f,
+	0x0111, 0x0144, 0x0148, 0x00f3, 0x00f4, 0x0151, 0x00f6, 0x00f7,
+	0x0159, 0x016f, 0x00fa, 0x0171, 0x00fc, 0x00fd, 0x0163, 0x02d9,
 };
 
 /**
@@ -912,7 +912,7 @@ static int gg_utf8_helper(unsigned char 
 		return 1;
 	}
 
-	if (c < 0xc2) 
+	if (c < 0xc2)
 		return -1;
 
 	if (c < 0xe0) {
@@ -922,8 +922,8 @@ static int gg_utf8_helper(unsigned char 
 			return -1;
 		*ch = ((uint16_t) (c & 0x1f) << 6) | (uint16_t) (s[1] ^ 0x80);
 		return 2;
-	} 
-	
+	}
+
 	if (c < 0xf0) {
 		if (n < 3)
 			return -2;
@@ -956,7 +956,7 @@ char *gg_utf8_to_cp(const char *b)
 	for (i = 0; i < len; newlen++) {
 		uint16_t discard;
 		int ret;
-		
+
 		ret = gg_utf8_helper(&buf[i], len - i, &discard);
 
 		if (ret > 0)
============================================================
--- libpurple/protocols/gg/lib/events.c	3f3a5185e1aa3d9949d496d301ae2352f8a2e211
+++ libpurple/protocols/gg/lib/events.c	db1cedcad5ee2bd39341d14f1fa509674e333c95
@@ -254,7 +254,7 @@ static void gg_image_queue_parse(struct 
 
 /**
  * \internal Analizuje informacje rozszerzone wiadomo?ci.
- * 
+ *
  * \param sess Struktura sesji.
  * \param e Struktura zdarzenia.
  * \param sender Numer nadawcy.
@@ -567,7 +567,7 @@ static int gg_convert_from_html(char *ds
 
 	if (dst != NULL)
 		dst[len] = 0;
-	
+
 	return len;
 }
 
@@ -893,7 +893,7 @@ static int gg_watch_fd_connected(struct 
 						e->event.notify60[i].descr = descr;
 
 						/* XXX czas */
-							
+
 						length -= sizeof(struct gg_notify_reply77) + descr_len + 1;
 						n = (void*) ((char*) n + sizeof(struct gg_notify_reply77) + descr_len + 1);
 					} else {
@@ -1026,7 +1026,7 @@ static int gg_watch_fd_connected(struct 
 						e->event.notify60[i].descr[descr_len] = 0;
 
 						/* XXX czas */
-							
+
 						length -= sizeof(struct gg_notify_reply60) + descr_len + 1;
 						n = (void*) ((char*) n + sizeof(struct gg_notify_reply60) + descr_len + 1);
 					} else {
@@ -2077,7 +2077,7 @@ struct gg_event *gg_watch_fd(struct gg_s
 
 				uint32_t tmp_version_len	= gg_fix32(strlen(GG8_VERSION));
 				uint32_t tmp_descr_len		= gg_fix32((sess->initial_descr) ? strlen(sess->initial_descr) : 0);
-				
+
 				memset(&l, 0, sizeof(l));
 				l.uin           = gg_fix32(sess->uin);
 				memcpy(l.language, GG8_LANG, sizeof(l.language));
@@ -2090,8 +2090,8 @@ struct gg_event *gg_watch_fd(struct gg_s
 				l.dunno2        = 0x64;
 
 				gg_debug_session(sess, GG_DEBUG_TRAFFIC, "// gg_watch_fd() sending GG_LOGIN80 packet\n");
-				ret = gg_send_packet(sess, GG_LOGIN80, 
-						&l, sizeof(l), 
+				ret = gg_send_packet(sess, GG_LOGIN80,
+						&l, sizeof(l),
 						&tmp_version_len, sizeof(uint32_t), GG8_VERSION, strlen(GG8_VERSION),
 						&tmp_descr_len, sizeof(uint32_t), sess->initial_descr, (sess->initial_descr) ? strlen(sess->initial_descr) : 0,
 						NULL);
============================================================
--- libpurple/protocols/gg/lib/libgadu.c	811ee11e96b6916b8c1ea4e63203684238b64550
+++ libpurple/protocols/gg/lib/libgadu.c	73fa1fe66171b9eb93d86890c603c6dc556ff321
@@ -112,7 +112,7 @@ void (*gg_debug_handler_session)(struct 
 
 /**
  * Port gniazda nas?uchuj?cego dla po??cze? bezpo?rednich.
- * 
+ *
  * \ingroup ip
  */
 int gg_dcc_port = 0;
@@ -783,9 +783,9 @@ struct gg_session *gg_login(const struct
 			gg_debug(GG_DEBUG_MISC, "// gg_login() not enough memory for status\n");
 			goto fail;
 		}
-		
+
 		// XXX pami?ta?, ?eby nie ci?? w ?rodku znaku utf-8
-		
+
 		if (strlen(sess->initial_descr) > max_length)
 			sess->initial_descr[max_length] = 0;
 	}
@@ -1298,7 +1298,7 @@ int gg_send_message_confer(struct gg_ses
 
 /**
  * \internal Dodaje tekst na koniec bufora.
- * 
+ *
  * \param dst Wska?nik na bufor roboczy
  * \param pos Wska?nik na aktualne po?o?enie w buforze roboczym
  * \param src Dodawany tekst
@@ -1420,9 +1420,9 @@ static int gg_convert_to_html(char *dst,
 				if (dst != NULL) {
 					sprintf(&dst[len], img_fmt,
 						format[format_idx + 9],
-						format[format_idx + 8], 
+						format[format_idx + 8],
 						format[format_idx + 7],
-						format[format_idx + 6], 
+						format[format_idx + 6],
 						format[format_idx + 5],
 						format[format_idx + 4],
 						format[format_idx + 3],
@@ -1510,7 +1510,7 @@ static int gg_convert_to_html(char *dst,
  * \param formatlen D?ugo?? informacji o formatowaniu
  *
  * \return Numer sekwencyjny wiadomo?ci lub -1 w przypadku b??du.
- * 
+ *
  * \ingroup messages
  */
 int gg_send_message_confer_richtext(struct gg_session *sess, int msgclass, int recipients_count, uin_t *recipients, const unsigned char *message, const unsigned char *format, int formatlen)
@@ -1566,7 +1566,7 @@ int gg_send_message_confer_richtext(stru
 		s.seq = gg_fix32(seq_no);
 	} else {
 		int len;
-		
+
 		// Drobne odchylenie od protoko?u. Je?li wysy?amy kilka
 		// wiadomo?ci w ci?gu jednej sekundy, zwi?kszamy poprzedni?
 		// warto??, ?eby ka?da wiadomo?? mia?a unikalny numer.
============================================================
--- libpurple/protocols/gg/lib/pubdir.c	acbb640332cb13edd6a5ace8ce907236657e089c
+++ libpurple/protocols/gg/lib/pubdir.c	24c25104f0611f35aa2ddd6868ecb497d0e7ecb1
@@ -122,10 +122,10 @@ struct gg_http *gg_register3(const char 
 
 	h->callback = gg_pubdir_watch_fd;
 	h->destroy = gg_pubdir_free;
-	
+
 	if (!async)
 		gg_pubdir_watch_fd(h);
-	
+
 	return h;
 }
 
@@ -193,7 +193,7 @@ struct gg_http *gg_unregister3(uin_t uin
 		errno = EFAULT;
 		return NULL;
 	}
-    
+
 	__pwd = gg_saprintf("%ld", random());
 	__fmpwd = gg_urlencode(password);
 	__tokenid = gg_urlencode(tokenid);
@@ -251,10 +251,10 @@ struct gg_http *gg_unregister3(uin_t uin
 
 	h->callback = gg_pubdir_watch_fd;
 	h->destroy = gg_pubdir_free;
-	
+
 	if (!async)
 		gg_pubdir_watch_fd(h);
-	
+
 	return h;
 }
 
@@ -324,7 +324,7 @@ struct gg_http *gg_change_passwd4(uin_t 
 		errno = EFAULT;
 		return NULL;
 	}
-	
+
 	__fmpwd = gg_urlencode(passwd);
 	__pwd = gg_urlencode(newpasswd);
 	__email = gg_urlencode(email);
@@ -340,7 +340,7 @@ struct gg_http *gg_change_passwd4(uin_t 
 		free(__tokenval);
 		return NULL;
 	}
-	
+
 	if (!(form = gg_saprintf("fmnumber=%d&fmpwd=%s&pwd=%s&email=%s&tokenid=%s&tokenval=%s&code=%u", uin, __fmpwd, __pwd, __email, __tokenid, __tokenval, gg_http_hash("ss", email, newpasswd)))) {
 		gg_debug(GG_DEBUG_MISC, "=> change, not enough memory for form fields\n");
 		free(__fmpwd);
@@ -351,13 +351,13 @@ struct gg_http *gg_change_passwd4(uin_t 
 
 		return NULL;
 	}
-	
+
 	free(__fmpwd);
 	free(__pwd);
 	free(__email);
 	free(__tokenid);
 	free(__tokenval);
-	
+
 	gg_debug(GG_DEBUG_MISC, "=> change, %s\n", form);
 
 	query = gg_saprintf(
@@ -460,7 +460,7 @@ struct gg_http *gg_remind_passwd3(uin_t 
 		errno = EFAULT;
 		return NULL;
 	}
-	
+
 	__tokenid = gg_urlencode(tokenid);
 	__tokenval = gg_urlencode(tokenval);
 	__email = gg_urlencode(email);
@@ -484,7 +484,7 @@ struct gg_http *gg_remind_passwd3(uin_t 
 	free(__tokenid);
 	free(__tokenval);
 	free(__email);
-	
+
 	gg_debug(GG_DEBUG_MISC, "=> remind, %s\n", form);
 
 	query = gg_saprintf(
@@ -588,7 +588,7 @@ int gg_pubdir_watch_fd(struct gg_http *h
 		errno = EINVAL;
 		return -1;
 	}
-	
+
 	if (h->state != GG_STATE_PARSING) {
 		if (gg_http_watch_fd(h) == -1) {
 			gg_debug(GG_DEBUG_MISC, "=> pubdir, http failure\n");
@@ -599,9 +599,9 @@ int gg_pubdir_watch_fd(struct gg_http *h
 
 	if (h->state != GG_STATE_PARSING)
 		return 0;
-	
+
 	h->state = GG_STATE_DONE;
-	
+
 	if (!(h->data = p = malloc(sizeof(struct gg_pubdir)))) {
 		gg_debug(GG_DEBUG_MISC, "=> pubdir, not enough memory for results\n");
 		return -1;
@@ -609,7 +609,7 @@ int gg_pubdir_watch_fd(struct gg_http *h
 
 	p->success = 0;
 	p->uin = 0;
-	
+
 	gg_debug(GG_DEBUG_MISC, "=> pubdir, let's parse \"%s\"\n", h->body);
 
 	if ((tmp = strstr(h->body, "Tokens okregisterreply_packet.reg.dwUserId="))) {
@@ -636,7 +636,7 @@ void gg_pubdir_free(struct gg_http *h)
 {
 	if (!h)
 		return;
-	
+
 	free(h->data);
 	gg_http_free(h);
 }
@@ -674,10 +674,10 @@ struct gg_http *gg_token(int async)
 
 	h->callback = gg_token_watch_fd;
 	h->destroy = gg_token_free;
-	
+
 	if (!async)
 		gg_token_watch_fd(h);
-	
+
 	return h;
 }
 
@@ -706,7 +706,7 @@ int gg_token_watch_fd(struct gg_http *h)
 		errno = EINVAL;
 		return -1;
 	}
-	
+
 	if (h->state != GG_STATE_PARSING) {
 		if (gg_http_watch_fd(h) == -1) {
 			gg_debug(GG_DEBUG_MISC, "=> token, http failure\n");
@@ -717,7 +717,7 @@ int gg_token_watch_fd(struct gg_http *h)
 
 	if (h->state != GG_STATE_PARSING)
 		return 0;
-	
+
 	/* je?li h->data jest puste, to ?ci?gali?my tokenid i url do niego,
 	 * ale je?li co? tam jest, to znaczy, ?e mamy drugi etap polegaj?cy
 	 * na pobieraniu tokenu. */
@@ -735,7 +735,7 @@ int gg_token_watch_fd(struct gg_http *h)
 			free(url);
 			return -1;
 		}
-		
+
 		if (!h->body || sscanf(h->body, "%d %d %d\r\n%s\r\n%s", &width, &height, &length, tokenid, url) != 5) {
 			gg_debug(GG_DEBUG_MISC, "=> token, parsing failed\n");
 			free(url);
@@ -743,7 +743,7 @@ int gg_token_watch_fd(struct gg_http *h)
 			errno = EINVAL;
 			return -1;
 		}
-		
+
 		/* dostali?my tokenid i wszystkie niezb?dne informacje,
 		 * wi?c pobierzmy obrazek z tokenem */
 
@@ -779,7 +779,7 @@ int gg_token_watch_fd(struct gg_http *h)
 			free(url);
 			free(tokenid);
 			return -1;
-		}			
+		}
 
 		if (!(h2 = gg_http_connect(host, GG_REGISTER_PORT, h->async, "GET", path, headers))) {
 			gg_debug(GG_DEBUG_MISC, "=> token, gg_http_connect() failed mysteriously\n");
@@ -803,7 +803,7 @@ int gg_token_watch_fd(struct gg_http *h)
 
 		h->callback = gg_token_watch_fd;
 		h->destroy = gg_token_free;
-	
+
 		if (!h->async)
 			gg_token_watch_fd(h);
 
@@ -821,7 +821,7 @@ int gg_token_watch_fd(struct gg_http *h)
 		/* obrazek mamy w h->body */
 		h->state = GG_STATE_DONE;
 	}
-	
+
 	return 0;
 }
 
@@ -841,7 +841,7 @@ void gg_token_free(struct gg_http *h)
 
 	if ((t = h->data))
 		free(t->tokenid);
-	
+
 	free(h->data);
 	gg_http_free(h);
 }
============================================================
--- libpurple/protocols/gg/lib/pubdir50.c	7da71632ba0136ccb182307b01d6fa772ff261c2
+++ libpurple/protocols/gg/lib/pubdir50.c	c4bdb865decb1b86f0955c7c1c3c2b905a237698
@@ -92,7 +92,7 @@ static int gg_pubdir50_add_n(gg_pubdir50
 
 		return 0;
 	}
-		
+
 	if (!(dupfield = strdup(field))) {
 		gg_debug(GG_DEBUG_MISC, "// gg_pubdir50_add_n() out of memory\n");
 		free(dupvalue);
@@ -147,7 +147,7 @@ int gg_pubdir50_seq_set(gg_pubdir50_t re
 int gg_pubdir50_seq_set(gg_pubdir50_t req, uint32_t seq)
 {
 	gg_debug(GG_DEBUG_FUNCTION, "** gg_pubdir50_seq_set(%p, %d);\n", req, seq);
-	
+
 	if (!req) {
 		gg_debug(GG_DEBUG_MISC, "// gg_pubdir50_seq_set() invalid arguments\n");
 		errno = EFAULT;
@@ -172,7 +172,7 @@ void gg_pubdir50_free(gg_pubdir50_t s)
 
 	if (!s)
 		return;
-	
+
 	for (i = 0; i < s->entries_count; i++) {
 		free(s->entries[i].field);
 		free(s->entries[i].value);
@@ -200,7 +200,7 @@ uint32_t gg_pubdir50(struct gg_session *
 	struct gg_pubdir50_request *r;
 
 	gg_debug_session(sess, GG_DEBUG_FUNCTION, "** gg_pubdir50(%p, %p);\n", sess, req);
-	
+
 	if (!sess || !req) {
 		gg_debug_session(sess, GG_DEBUG_MISC, "// gg_pubdir50() invalid arguments\n");
 		errno = EFAULT;
@@ -217,7 +217,7 @@ uint32_t gg_pubdir50(struct gg_session *
 		/* wyszukiwanie bierze tylko pierwszy wpis */
 		if (req->entries[i].num)
 			continue;
-		
+
 		if (sess->encoding == GG_ENCODING_CP1250) {
 			size += strlen(req->entries[i].field) + 1;
 			size += strlen(req->entries[i].value) + 1;
@@ -320,7 +320,7 @@ int gg_pubdir50_handle_reply_sess(struct
 	struct gg_pubdir50_reply *r = (struct gg_pubdir50_reply*) packet;
 	gg_pubdir50_t res;
 	int num = 0;
-	
+
 	gg_debug(GG_DEBUG_FUNCTION, "** gg_pubdir50_handle_reply_sess(%p, %p, %p, %d);\n", sess, e, packet, length);
 
 	if (!sess || !e || !packet) {
@@ -377,7 +377,7 @@ int gg_pubdir50_handle_reply_sess(struct
 		}
 
 		value = NULL;
-		
+
 		for (p = field; p < end; p++) {
 			/* je?li mamy koniec tekstu... */
 			if (!*p) {
@@ -392,7 +392,7 @@ int gg_pubdir50_handle_reply_sess(struct
 					break;
 			}
 		}
-		
+
 		/* sprawd?my, czy pole nie wychodzi poza pakiet, ?eby nie
 		 * mie? segfault?w, je?li serwer przestanie zaka?cza? pakiet?w
 		 * przez \0 */
@@ -429,10 +429,10 @@ int gg_pubdir50_handle_reply_sess(struct
 				free(tmp);
 			}
 		}
-	}	
+	}
 
 	res->count = num + 1;
-	
+
 	return 0;
 
 failure:
============================================================
--- libpurple/protocols/gg/buddylist.c	76f8244f7c77043a549248df73ed41e8f8e85b38
+++ libpurple/protocols/gg/buddylist.c	7dfeee613c00f65de04631594a9fdf5b3c06ab4f
@@ -82,7 +82,7 @@ void ggp_buddylist_load(PurpleConnection
 	gchar **users_tbl;
 	int i;
 	char *utf8buddylist = charset_convert(buddylist, "CP1250", "UTF-8");
-	
+
 	/* Don't limit the number of records in a buddylist. */
 	users_tbl = g_strsplit(utf8buddylist, "\r\n", -1);
 
@@ -95,7 +95,7 @@ void ggp_buddylist_load(PurpleConnection
 
 		data_tbl = g_strsplit(users_tbl[i], ";", 8);
 		if (ggp_array_size(data_tbl) < 8) {
-			purple_debug_warning("gg", 
+			purple_debug_warning("gg",
 				"Something is wrong on line %d of the buddylist. Skipping.\n",
 				i + 1);
 			continue;
============================================================
--- libpurple/plugins/log_reader.c	37097eb3741d39edb717a06b0c0e6632d442fd54
+++ libpurple/plugins/log_reader.c	258f4e12810db5d465e4a71338ce08b00eb2f8c2
@@ -1587,7 +1587,7 @@ static char * trillian_logger_read (Purp
 
 					if (buddy != NULL)
 						alias = purple_buddy_get_alias(buddy);
-					
+
 					if (alias != NULL)
 						g_string_append(formatted, alias);
 					else
@@ -1824,7 +1824,7 @@ static GList *qip_logger_list(PurpleLogT
 				purple_str_has_prefix(c, QIP_LOG_OUT_MESSAGE)) {
 
 				char *tmp;
-				
+
 				new_line = c;
 
 				/* find EOL */
@@ -1886,7 +1886,7 @@ static GList *qip_logger_list(PurpleLogT
 			data->offset = offset;
 			offset += data->length;
 			purple_debug_info("QIP logger list",
-				"Creating log: path = (%s); length = (%d); offset = (%d)\n", 
+				"Creating log: path = (%s); length = (%d); offset = (%d)\n",
 				data->path, data->length, data->offset);
 
 			/* XXX: Look into this later... Should we pass in a struct tm? */
@@ -2323,7 +2323,7 @@ static char *amsn_logger_read(PurpleLog 
 
 	file = g_fopen(data->path, "rb");
 	g_return_val_if_fail(file != NULL, g_strdup(""));
-	
+
 	fseek(file, data->offset, SEEK_SET);
 	data->length = fread(contents, 1, data->length, file);
 	fclose(file);
@@ -2417,7 +2417,7 @@ static int amsn_logger_size(PurpleLog *l
 	g_return_val_if_fail(log != NULL, 0);
 
 	data = log->logger_data;
-	
+
 	if (purple_prefs_get_bool("/plugins/core/log_reader/fast_sizes")) {
 		return data ? data->length : 0;
 	}
============================================================
--- libpurple/plugins/mono/loader/blist-glue.c	97f55fba56061b6ef8e67030617b7950f6f88d29
+++ libpurple/plugins/mono/loader/blist-glue.c	a8858720a02806a5c17d07a6699345c13e872f16
@@ -6,21 +6,21 @@ MonoObject* purple_blist_get_handle_glue
 MonoObject* purple_blist_get_handle_glue(void)
 {
 	void *handle = purple_blist_get_handle();
-	
+
 	return mono_value_box(ml_get_domain(), mono_get_intptr_class(), &handle);
 }
 
 MonoObject* purple_blist_build_buddy_object(void* data)
 {
 	MonoObject *obj = NULL;
-			
+
 	PurpleBuddy *buddy = (PurpleBuddy*)data;
-	
+
 	obj = ml_create_api_object("Buddy");
 	g_return_val_if_fail(obj != NULL, NULL);
-		
+
 	ml_set_prop_string(obj, "Name", (char*)purple_buddy_get_name(buddy));
 	ml_set_prop_string(obj, "Alias", (char*)purple_buddy_get_alias(buddy));
-	
+
 	return obj;
 }
============================================================
--- libpurple/plugins/mono/loader/debug-glue.c	77b706c1636dc9e245adc04212e4609d117aaa58
+++ libpurple/plugins/mono/loader/debug-glue.c	5b9586c007415b855117e5d81b9827c2b3e84416
@@ -5,12 +5,12 @@ void purple_debug_glue(int type, MonoStr
 {
 	char *ccat;
 	char *cstr;
-	
+
 	ccat = mono_string_to_utf8(cat);
 	cstr = mono_string_to_utf8(str);
-	
+
 	purple_debug(type, ccat, "%s", cstr);
-	
+
 	g_free(ccat);
 	g_free(cstr);
 }
============================================================
--- libpurple/plugins/mono/loader/mono-helper.c	f76ab7151f91cb1ff6e2940c31cd5d791a46d47c
+++ libpurple/plugins/mono/loader/mono-helper.c	0e10f3aa3190f293b254ad65fbf6dfc5071f54b2
@@ -22,57 +22,57 @@ gboolean ml_init()
 gboolean ml_init()
 {
 	MonoDomain *d;
-	
+
 	g_return_val_if_fail(_runtime_active == FALSE, TRUE);
-	
+
 	d = mono_jit_init("purple");
-	
+
 	if (!d) {
 		ml_set_domain(NULL);
 		return FALSE;
 	}
-	
+
 	ml_set_domain(d);
-	
+
 	ml_init_internal_calls();
-	
+
 	_runtime_active = TRUE;
-	
+
 	return TRUE;
 }
 
 void ml_uninit()
 {
 	g_return_if_fail(_runtime_active == TRUE);
-	
+
 	mono_jit_cleanup(ml_get_domain());
-	
+
 	ml_set_domain(NULL);
-	
+
 	_runtime_active = FALSE;
 }
 
 MonoObject* ml_delegate_invoke(MonoObject *method, void **params)
 {
 	MonoObject *ret, *exception;
-	
+
 	ret = mono_runtime_delegate_invoke(method, params, &exception);
 	if (exception) {
 		purple_debug(PURPLE_DEBUG_ERROR, "mono", "caught exception: %s\n", mono_class_get_name(mono_object_get_class(exception)));
 	}
-	
+
 	return ret;
 }
 
 MonoObject* ml_invoke(MonoMethod *method, void *obj, void **params)
 {
 	MonoObject *ret, *exception;
-	
+
 	ret = mono_runtime_invoke(method, obj, params, &exception);
 	if (exception) {
 		purple_debug(PURPLE_DEBUG_ERROR, "mono", "caught exception: %s\n", mono_class_get_name(mono_object_get_class(exception)));
 	}
-	
+
 	return ret;
 }
 
@@ -84,15 +84,15 @@ MonoClass* ml_find_plugin_class(MonoImag
 	total = mono_image_get_table_rows (image, MONO_TABLE_TYPEDEF);
 	for (i = 1; i <= total; ++i) {
 		klass = mono_class_get (image, MONO_TOKEN_TYPE_DEF | i);
-		
+
 		pklass = mono_class_get_parent(klass);
 		if (pklass) {
-		
+
 			if (strcmp("Plugin", mono_class_get_name(pklass)) == 0)
 				return klass;
 		}
 	}
-	
+
 	return NULL;
 }
 
@@ -102,15 +102,15 @@ void ml_set_prop_string(MonoObject *obj,
 	MonoProperty *prop;
 	MonoString *str;
 	gpointer args[1];
-	
+
 	klass = mono_object_get_class(obj);
-	
+
 	prop = mono_class_get_property_from_name(klass, field);
-	
+
 	str = mono_string_new(ml_get_domain(), data);
-	
+
 	args[0] = str;
-	
+
 	mono_property_set_value(prop, obj, args, NULL);
 }
 
@@ -119,13 +119,13 @@ gchar* ml_get_prop_string(MonoObject *ob
 	MonoClass *klass;
 	MonoProperty *prop;
 	MonoString *str;
-	
+
 	klass = mono_object_get_class(obj);
-	
+
 	prop = mono_class_get_property_from_name(klass, field);
-	
+
 	str = (MonoString*)mono_property_get_value(prop, obj, NULL, NULL);
-	
+
 	return mono_string_to_utf8(str);
 }
 
@@ -133,16 +133,16 @@ MonoObject* ml_get_info_prop(MonoObject 
 {
 	MonoClass *klass;
 	MonoProperty *prop;
-	
+
 	klass = mono_class_get_parent(mono_object_get_class(obj));
-	
+
 	prop = mono_class_get_property_from_name(klass, "Info");
-	
+
 	return mono_property_get_value(prop, obj, NULL, NULL);
 }
 
 gboolean ml_is_api_dll(MonoImage *image)
-{	
+{
 	MonoClass *klass;
 	int i, total;
 
@@ -155,7 +155,7 @@ gboolean ml_is_api_dll(MonoImage *image)
 				return TRUE;
 			}
 	}
-	
+
 	return FALSE;
 }
 
@@ -167,7 +167,7 @@ MonoObject* ml_object_from_purple_subtyp
 MonoObject* ml_object_from_purple_subtype(PurpleSubType type, gpointer data)
 {
 	MonoObject *obj = NULL;
-	
+
 	switch (type) {
 		case PURPLE_SUBTYPE_BLIST_BUDDY:
 			obj = purple_blist_build_buddy_object(data);
@@ -178,7 +178,7 @@ MonoObject* ml_object_from_purple_subtyp
 		default:
 		break;
 	}
-	
+
 	return obj;
 }
 
@@ -186,21 +186,21 @@ MonoObject* ml_create_api_object(char *c
 {
 	MonoObject *obj = NULL;
 	MonoClass *klass = NULL;
-		
+
 	klass = mono_class_from_name(ml_get_api_image(), "Purple", class_name);
 	if (!klass) {
 		purple_debug(PURPLE_DEBUG_FATAL, "mono", "couldn't find the '%s' class\n", class_name);
 		return NULL;
 	}
-	
+
 	obj = mono_object_new(ml_get_domain(), klass);
 	if (!obj) {
 		purple_debug(PURPLE_DEBUG_FATAL, "mono", "couldn't create the object from class '%s'\n", class_name);
 		return NULL;
 	}
-	
+
 	mono_runtime_object_init(obj);
-	
+
 	return obj;
 }
 
@@ -241,7 +241,7 @@ void ml_add_plugin(PurpleMonoPlugin *plu
 {
 	if (!plugins_hash)
 		plugins_hash = g_hash_table_new(NULL, NULL);
-		
+
 	g_hash_table_insert(plugins_hash, plugin->klass, plugin);
 }
 
============================================================
--- libpurple/plugins/mono/loader/signal-glue.c	e4101262728752ba45db9f0caf3e1e874c254774
+++ libpurple/plugins/mono/loader/signal-glue.c	d15ee8277a8000146f4865fd75936103ce3b0bd2
@@ -22,13 +22,13 @@ static gpointer dispatch_callback(Signal
 	int i;
 	gpointer meth_args[1];
 	gpointer purple_obj;
-	
+
 	va_list args;
-	
+
 	va_start(args, num_vals);
-	
+
 	array = mono_array_new(ml_get_domain(), mono_get_object_class(), num_vals);
-	
+
 	for (i = 0; i < num_vals; i++) {
 		if (purple_value_get_type(sig_data->values[i]) == PURPLE_TYPE_SUBTYPE) {
 			purple_obj = va_arg(args, gpointer);
@@ -40,22 +40,22 @@ static gpointer dispatch_callback(Signal
 			mono_array_set(array, MonoObject*, i, obj);
 		}
 	}
-	
+
 	va_end(args);
-	
+
 	meth_args[0] = array;
-	
-	return ml_delegate_invoke(sig_data->func, meth_args);	
+
+	return ml_delegate_invoke(sig_data->func, meth_args);
 }
 
 static void cb_void__pointer(void *arg1, void *data)
 {
-	dispatch_callback((SignalData*)data, ((SignalData*)data)->num_vals, arg1);	
+	dispatch_callback((SignalData*)data, ((SignalData*)data)->num_vals, arg1);
 }
 
 static void cb_void__pointer_pointer_pointer(void *arg1, void *arg2, void *arg3, void *data)
 {
-	dispatch_callback((SignalData*)data, ((SignalData*)data)->num_vals, arg1, arg2, arg3);	
+	dispatch_callback((SignalData*)data, ((SignalData*)data)->num_vals, arg1, arg2, arg3);
 }
 
 
@@ -66,23 +66,23 @@ int purple_signal_connect_glue(MonoObjec
 	SignalData *sig_data;
 	PurpleMonoPlugin *mplug;
 	MonoClass *klass;
-		
+
 	sig = mono_string_to_utf8(signal);
 	purple_debug(PURPLE_DEBUG_INFO, "mono", "connecting signal: %s\n", sig);
-	
+
 	instance = (void*)mono_object_unbox(h);
-	
+
 	sig_data = g_new0(SignalData, 1);
-	
+
 	sig_data->func = func;
 	sig_data->signal = sig;
-	
+
 	purple_signal_get_values(*instance, sig, &sig_data->ret_value, &sig_data->num_vals, &sig_data->values);
-	
+
 	klass = mono_object_get_class(plugin);
-	
+
 	mplug = ml_find_plugin_by_class(klass);
-	
+
 	mplug->signal_data = g_list_append(mplug->signal_data, (gpointer)sig_data);
 
 	return purple_signal_connect(*instance, sig, (gpointer)klass, get_callback(sig_data), (gpointer)sig_data);
@@ -104,7 +104,7 @@ static int determine_index(PurpleType ty
 	}
 }
 
-static gpointer callbacks[]= { 
+static gpointer callbacks[]= {
 										NULL,
 										cb_void__pointer,
 										NULL,
@@ -112,8 +112,8 @@ static int callbacks_array_size = sizeof
 									};
 
 static int callbacks_array_size = sizeof(callbacks) / sizeof(PurpleCallback);
-	
 
+
 static PurpleCallback get_callback(SignalData *sig_data)
 {
 	int i, index = 0;
@@ -122,18 +122,18 @@ static PurpleCallback get_callback(Signa
 		index = 0;
 	else
 		index = determine_index(purple_value_get_type(sig_data->ret_value));
-	
+
 	for (i = 0; i < sig_data->num_vals; i++) {
 		index += determine_index(purple_value_get_type(sig_data->values[i]));
 	}
-	
+
 	purple_debug(PURPLE_DEBUG_INFO, "mono", "get_callback index = %d\n", index);
-	
+
 	if (index >= callbacks_array_size || callbacks[index] == NULL) {
 		purple_debug(PURPLE_DEBUG_ERROR, "mono", "couldn't find a callback function for signal: %s\n", sig_data->signal);
 		return NULL;
 	}
-	
+
 	purple_debug(PURPLE_DEBUG_MISC, "mono", "using callback at index: %d\n", index);
 	return PURPLE_CALLBACK(callbacks[index]);
 }
============================================================
--- libpurple/plugins/mono/loader/status-glue.c	f744d8685c9517d275a8508f9b677630f5cc70b8
+++ libpurple/plugins/mono/loader/status-glue.c	782c3e5b0e2c05e1afaf5fe6bc7c70a451544aa7
@@ -6,11 +6,11 @@ MonoObject* purple_status_build_status_o
 {
 	MonoObject *obj = NULL;
 	PurpleStatus *status = (PurpleStatus*)data;
-	
+
 	obj = ml_create_api_object("Status");
 	g_return_val_if_fail(obj != NULL, NULL);
-		
+
 	ml_set_prop_string(obj, "Id", (char*)purple_status_get_id(status));
-	
+
 	return obj;
 }
============================================================
--- libpurple/plugins/codeinline.c	779492e12fa08c305a2de3ed2e76bca5dc90a0e0
+++ libpurple/plugins/codeinline.c	895f8e9bf35b8fb9a637bc3399c1aaba4c1312d7
@@ -62,7 +62,7 @@ static PurplePluginInfo info =
 {
      PURPLE_PLUGIN_MAGIC,
      PURPLE_MAJOR_VERSION,
-     PURPLE_MINOR_VERSION,     
+     PURPLE_MINOR_VERSION,
      PURPLE_PLUGIN_STANDARD,
      NULL,
      0,
============================================================
--- libpurple/plugins/psychic.c	5634b4ed4220ee9fc7a24cd903dc5600aef4b694
+++ libpurple/plugins/psychic.c	b93b757597e156c5d14a44e8067f91fe7b9f92f9
@@ -85,9 +85,9 @@ get_plugin_pref_frame(PurplePlugin *plug
 
   PurplePluginPrefFrame *frame;
   PurplePluginPref *pref;
-  
+
   frame = purple_plugin_pref_frame_new();
-  
+
   pref = purple_plugin_pref_new_with_name(PREF_BUDDIES);
   purple_plugin_pref_set_label(pref, _("Only enable for users on"
 				     " the buddy list"));
@@ -118,7 +118,7 @@ plugin_load(PurplePlugin *plugin) {
 
   purple_signal_connect(convs_handle, "buddy-typing", plugin,
 		      PURPLE_CALLBACK(buddy_typing_cb), NULL);
-  
+
   return TRUE;
 }
 
@@ -127,7 +127,7 @@ static PurplePluginUiInfo prefs_info = {
   get_plugin_pref_frame,
   0,    /* page_num (Reserved) */
   NULL, /* frame (Reserved) */
-  
+
   /* padding */
   NULL,
   NULL,
@@ -145,7 +145,7 @@ static PurplePluginInfo info = {
   0,                      /**< flags */
   NULL,                   /**< dependencies */
   PURPLE_PRIORITY_DEFAULT,  /**< priority */
-  
+
   PLUGIN_ID,              /**< id */
   PLUGIN_NAME,            /**< name */
   DISPLAY_VERSION,        /**< version */
@@ -153,11 +153,11 @@ static PurplePluginInfo info = {
   PLUGIN_DESC,            /**< description */
   PLUGIN_AUTHOR,          /**< author */
   PURPLE_WEBSITE,           /**< homepage */
-  
+
   plugin_load,            /**< load */
   NULL,                   /**< unload */
   NULL,                   /**< destroy */
-  
+
   NULL,                   /**< ui_info */
   NULL,                   /**< extra_info */
   &prefs_info,            /**< prefs_info */
============================================================
--- libpurple/protocols/oscar/family_icq.c	da2f91e3871e683861698a416bb17e6f4fc7eca1
+++ libpurple/protocols/oscar/family_icq.c	4de73e397aaf10ea54bdef718734f121f769f48e
@@ -88,17 +88,17 @@ int error(OscarData *od, aim_modsnac_t *
 		g_free(original_snac);
 		return 0;
 	}
-	
+
 	request_type = original_snac->data;
 	original_info_ptr = g_slist_find_custom(od->icq_info, &original_snac->id, compare_icq_infos);
 	original_info = original_info_ptr->data;
-	
+
 	if (!original_info_ptr) {
 		purple_debug_misc("oscar", "icq: the request info for the error packet was not found");
 		g_free(original_snac);
 		return 0;
 	}
-	
+
 	reason = byte_stream_get16(bs);
 	uin = g_strdup_printf("%u", original_info->uin);
 	switch (*request_type) {
============================================================
--- libpurple/protocols/oscar/family_locate.c	e6366a97a27174a6ad74bf861823b93b7e4a993c
+++ libpurple/protocols/oscar/family_locate.c	36b87580bf7800fd66b688e5240366449e669c30
@@ -173,7 +173,7 @@ static const struct {
 
 	/* Support xtraz statuses */
 	{OSCAR_CAPABILITY_XTRAZ,
-	 {0x1a, 0x09, 0x3c, 0x6c, 0xd7, 0xFD, 0x4e, 0xc5, 
+	 {0x1a, 0x09, 0x3c, 0x6c, 0xd7, 0xFD, 0x4e, 0xc5,
 	  0x9d, 0x51, 0xa6, 0x47, 0x4e, 0x34, 0xf5, 0xa0}},
 
 	{OSCAR_CAPABILITY_SENDBUDDYLIST,
@@ -630,7 +630,7 @@ aim_receive_custom_icon(OscarData *od, B
 
 		for (i = 0; icq_custom_icons[i].mood; i++) {
 			if (memcmp(&icq_custom_icons[i].data, cap, 0x10) == 0) {
-				purple_debug_misc("oscar", "Custom status icon: %s\n", icq_purple_moods[i].description);		
+				purple_debug_misc("oscar", "Custom status icon: %s\n", icq_purple_moods[i].description);
 				result = icq_custom_icons[i].mood;
 				break; /* should only match once... */
 			}
============================================================
--- libpurple/protocols/oscar/odc.c	7c8938bf4dd060a7eca1e2ddf60e6d1167cd3d9f
+++ libpurple/protocols/oscar/odc.c	a4f721a81cbb750a04039446c8b45beb96e87b7b
@@ -112,8 +112,8 @@ peer_odc_send(PeerConnection *conn, OdcF
 	byte_stream_put16(&bs, 0x0000);
 	byte_stream_put32(&bs, frame->payload.len);
 	byte_stream_put16(&bs, frame->encoding);
-	byte_stream_put16(&bs, 0x0000);	
 	byte_stream_put16(&bs, 0x0000);
+	byte_stream_put16(&bs, 0x0000);
 	byte_stream_put16(&bs, frame->flags);
 	byte_stream_put16(&bs, 0x0000);
 	byte_stream_put16(&bs, 0x0000);
============================================================
--- libpurple/plugins/tcl/tcl_ref.c	7b01dbed271c0f87a269cf5b85bb2316d8ba1865
+++ libpurple/plugins/tcl/tcl_ref.c	110472d623d581203399513985f724c71e4b8933
@@ -4,7 +4,7 @@
  * purple
  *
  * Copyright (C) 2006 Ethan Blanton <eblanton at cs.purdue.edu>
- * 
+ *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
  * the Free Software Foundation; either version 2 of the License, or
============================================================
--- finch/gntblist.c	790e940f13586bdac63d428a98e4018abd10f182
+++ finch/gntblist.c	9e21aaef31baacd8331062abbcf2c14e34bbb711
@@ -1807,7 +1807,7 @@ tooltip_for_buddy(PurpleBuddy *buddy, GS
 			}
 		}
 	}
-	
+
 	tmp = purple_notify_user_info_get_text_with_newline(user_info, "<BR>");
 	purple_notify_user_info_destroy(user_info);
 
@@ -2066,7 +2066,7 @@ populate_buddylist(void)
 		gnt_tree_set_compare_func(GNT_TREE(ggblist->tree),
 			(GCompareFunc)blist_node_compare_log);
 	}
-	
+
 	list = purple_get_blist();
 	node = purple_blist_get_root();
 	while (node)
============================================================
--- finch/finch.c	dcee1fe9c9089e8148968f37a3b14dd4c21c4ee3
+++ finch/finch.c	170d09042925f551e122f422b1e4f213952960fb
@@ -422,7 +422,7 @@ static gboolean gnt_start(int *argc, cha
 	/* Initialize the libpurple stuff */
 	if (!init_libpurple(*argc, *argv))
 		return FALSE;
- 
+
 	purple_blist_show();
 	return TRUE;
 }
============================================================
--- finch/gntui.c	6af8110c479dc4cabb5a59f2471107391d9c881b
+++ finch/gntui.c	f11bbb7a200913b30615079ea07e7662140e7152
@@ -51,7 +51,7 @@ void gnt_ui_init()
 #endif
 
 	purple_prefs_add_none("/purple/gnt");
-	
+
 	/* Accounts */
 	finch_accounts_init();
 	purple_accounts_set_ui_ops(finch_accounts_get_ui_ops());
============================================================
--- finch/libgnt/gntbox.c	2bba1c2a935faf49058a2fa578214b0a606cf198
+++ finch/libgnt/gntbox.c	7e7210c236116259ffcc1bd8b40f0b9f6ac5abf1
@@ -64,7 +64,7 @@ get_title_thingies(GntBox *box, char *ti
 	GntWidget *widget = GNT_WIDGET(box);
 	int len;
 	char *end = (char*)gnt_util_onscreen_width_to_pointer(title, widget->priv.width - 4, &len);
-	
+
 	if (p)
 		*p = (widget->priv.width - len) / 2;
 	if (r)
============================================================
--- finch/libgnt/gntmain.c	c68dc315a89db3e9fe6caff990e17bc20153a7fd
+++ finch/libgnt/gntmain.c	314299986b3e44cccb469ec6166b5a4f68ce2768
@@ -126,7 +126,7 @@ detect_mouse_action(const char *buffer)
 
 	if (!wm->cws->ordered || buffer[0] != 27)
 		return FALSE;
-	
+
 	buffer++;
 	if (strlen(buffer) < 5)
 		return FALSE;
@@ -177,7 +177,7 @@ detect_mouse_action(const char *buffer)
 
 	if (widget && gnt_wm_process_click(wm, event, x, y, widget))
 		return TRUE;
-	
+
 	if (event == GNT_LEFT_MOUSE_DOWN && widget && widget != wm->_list.window &&
 			!GNT_WIDGET_IS_FLAG_SET(widget, GNT_WIDGET_TRANSIENT)) {
 		if (widget != wm->cws->ordered->data) {
@@ -438,7 +438,7 @@ init_wm(void)
 {
 	const char *name = gnt_style_get(GNT_STYLE_WM);
 	gpointer handle;
-	
+
 	if (name && *name) {
 		handle = g_module_open(name, G_MODULE_BIND_LAZY);
 		if (handle) {
@@ -459,7 +459,7 @@ void gnt_init()
 
 	if (channel)
 		return;
-	
+
 	locale = setlocale(LC_ALL, "");
 
 	setup_io();
@@ -554,7 +554,7 @@ gboolean gnt_widget_has_focus(GntWidget 
 	GntWidget *w;
 	if (!widget)
 		return FALSE;
-	
+
 	if (GNT_IS_MENU(widget))
 		return TRUE;
 
============================================================
--- finch/libgnt/gnttree.c	40a9fe05c0da9243dc7f5cf3d807532e0dd008c5
+++ finch/libgnt/gnttree.c	e3e4a863e689d4efa607cdf9c82f048fb789b292
@@ -275,7 +275,7 @@ get_root_distance(GntTreeRow *row)
 	return get_root_distance(get_prev(row)) + 1;
 }
 
-/* Returns the distance between a and b. 
+/* Returns the distance between a and b.
  * If a is 'above' b, then the distance is positive */
 static int
 get_distance(GntTreeRow *a, GntTreeRow *b)
@@ -627,7 +627,7 @@ gnt_tree_draw(GntWidget *widget)
 	GntTree *tree = GNT_TREE(widget);
 
 	redraw_tree(tree);
-	
+
 	GNTDEBUG;
 }
 
@@ -1066,7 +1066,7 @@ gnt_tree_class_init(GntTreeClass *klass)
 			)
 		);
 
-	signals[SIG_SELECTION_CHANGED] = 
+	signals[SIG_SELECTION_CHANGED] =
 		g_signal_new("selection-changed",
 					 G_TYPE_FROM_CLASS(klass),
 					 G_SIGNAL_RUN_LAST,
@@ -1074,7 +1074,7 @@ gnt_tree_class_init(GntTreeClass *klass)
 					 NULL, NULL,
 					 gnt_closure_marshal_VOID__POINTER_POINTER,
 					 G_TYPE_NONE, 2, G_TYPE_POINTER, G_TYPE_POINTER);
-	signals[SIG_SCROLLED] = 
+	signals[SIG_SCROLLED] =
 		g_signal_new("scrolled",
 					 G_TYPE_FROM_CLASS(klass),
 					 G_SIGNAL_RUN_LAST,
@@ -1082,7 +1082,7 @@ gnt_tree_class_init(GntTreeClass *klass)
 					 NULL, NULL,
 					 g_cclosure_marshal_VOID__INT,
 					 G_TYPE_NONE, 1, G_TYPE_INT);
-	signals[SIG_TOGGLED] = 
+	signals[SIG_TOGGLED] =
 		g_signal_new("toggled",
 					 G_TYPE_FROM_CLASS(klass),
 					 G_SIGNAL_RUN_LAST,
@@ -1090,7 +1090,7 @@ gnt_tree_class_init(GntTreeClass *klass)
 					 NULL, NULL,
 					 g_cclosure_marshal_VOID__POINTER,
 					 G_TYPE_NONE, 1, G_TYPE_POINTER);
-	signals[SIG_COLLAPSED] = 
+	signals[SIG_COLLAPSED] =
 		g_signal_new("collapse-toggled",
 					 G_TYPE_FROM_CLASS(klass),
 					 G_SIGNAL_RUN_LAST,
@@ -1384,7 +1384,7 @@ GntTreeRow *gnt_tree_add_row_after(GntTr
 			}
 		}
 
-		if (pr == NULL && parent)	
+		if (pr == NULL && parent)
 		{
 			pr = g_hash_table_lookup(tree->hash, parent);
 			if (pr)
@@ -1564,7 +1564,7 @@ void gnt_tree_change_text(GntTree *tree,
 	GntTreeCol *col;
 
 	g_return_if_fail(colno < tree->ncol);
-	
+
 	row = g_hash_table_lookup(tree->hash, key);
 	if (row)
 	{
@@ -1601,7 +1601,7 @@ GntTreeRow *gnt_tree_add_choice(GntTree 
 				while (r->next)
 					r = r->next;
 				bigbro = r->key;
-			} 
+			}
 		}
 	}
 	row = gnt_tree_add_row_after(tree, key, row, parent, bigbro);
============================================================
--- finch/libgnt/gntwidget.c	648d60b0afde13e95913edce727a09c02de3bb33
+++ finch/libgnt/gntwidget.c	fc8eb8d575f8d4b459e0641310abc651177dba68
@@ -126,12 +126,12 @@ gnt_widget_class_init(GntWidgetClass *kl
 	klass->lost_focus = gnt_widget_focus_change;
 	klass->gained_focus = gnt_widget_focus_change;
 	klass->confirm_size = gnt_widget_dummy_confirm_size;
-	
+
 	klass->key_pressed = NULL;
 	klass->activate = NULL;
 	klass->clicked = NULL;
-	
-	signals[SIG_DESTROY] = 
+
+	signals[SIG_DESTROY] =
 		g_signal_new("destroy",
 					 G_TYPE_FROM_CLASS(klass),
 					 G_SIGNAL_RUN_LAST,
@@ -139,7 +139,7 @@ gnt_widget_class_init(GntWidgetClass *kl
 					 NULL, NULL,
 					 g_cclosure_marshal_VOID__VOID,
 					 G_TYPE_NONE, 0);
-	signals[SIG_GIVE_FOCUS] = 
+	signals[SIG_GIVE_FOCUS] =
 		g_signal_new("gained-focus",
 					 G_TYPE_FROM_CLASS(klass),
 					 G_SIGNAL_RUN_LAST,
@@ -147,7 +147,7 @@ gnt_widget_class_init(GntWidgetClass *kl
 					 NULL, NULL,
 					 g_cclosure_marshal_VOID__VOID,
 					 G_TYPE_NONE, 0);
-	signals[SIG_LOST_FOCUS] = 
+	signals[SIG_LOST_FOCUS] =
 		g_signal_new("lost-focus",
 					 G_TYPE_FROM_CLASS(klass),
 					 G_SIGNAL_RUN_LAST,
@@ -155,7 +155,7 @@ gnt_widget_class_init(GntWidgetClass *kl
 					 NULL, NULL,
 					 g_cclosure_marshal_VOID__VOID,
 					 G_TYPE_NONE, 0);
-	signals[SIG_ACTIVATE] = 
+	signals[SIG_ACTIVATE] =
 		g_signal_new("activate",
 					 G_TYPE_FROM_CLASS(klass),
 					 G_SIGNAL_RUN_LAST,
@@ -163,7 +163,7 @@ gnt_widget_class_init(GntWidgetClass *kl
 					 NULL, NULL,
 					 g_cclosure_marshal_VOID__VOID,
 					 G_TYPE_NONE, 0);
-	signals[SIG_MAP] = 
+	signals[SIG_MAP] =
 		g_signal_new("map",
 					 G_TYPE_FROM_CLASS(klass),
 					 G_SIGNAL_RUN_LAST,
@@ -171,7 +171,7 @@ gnt_widget_class_init(GntWidgetClass *kl
 					 NULL, NULL,
 					 g_cclosure_marshal_VOID__VOID,
 					 G_TYPE_NONE, 0);
-	signals[SIG_DRAW] = 
+	signals[SIG_DRAW] =
 		g_signal_new("draw",
 					 G_TYPE_FROM_CLASS(klass),
 					 G_SIGNAL_RUN_LAST,
@@ -179,7 +179,7 @@ gnt_widget_class_init(GntWidgetClass *kl
 					 NULL, NULL,
 					 g_cclosure_marshal_VOID__VOID,
 					 G_TYPE_NONE, 0);
-	signals[SIG_HIDE] = 
+	signals[SIG_HIDE] =
 		g_signal_new("hide",
 					 G_TYPE_FROM_CLASS(klass),
 					 G_SIGNAL_RUN_LAST,
@@ -187,7 +187,7 @@ gnt_widget_class_init(GntWidgetClass *kl
 					 NULL, NULL,
 					 g_cclosure_marshal_VOID__VOID,
 					 G_TYPE_NONE, 0);
-	signals[SIG_EXPOSE] = 
+	signals[SIG_EXPOSE] =
 		g_signal_new("expose",
 					 G_TYPE_FROM_CLASS(klass),
 					 G_SIGNAL_RUN_LAST,
@@ -195,7 +195,7 @@ gnt_widget_class_init(GntWidgetClass *kl
 					 NULL, NULL,
 					 gnt_closure_marshal_VOID__INT_INT_INT_INT,
 					 G_TYPE_NONE, 4, G_TYPE_INT, G_TYPE_INT, G_TYPE_INT, G_TYPE_INT);
-	signals[SIG_POSITION] = 
+	signals[SIG_POSITION] =
 		g_signal_new("position-set",
 					 G_TYPE_FROM_CLASS(klass),
 					 G_SIGNAL_RUN_LAST,
@@ -203,7 +203,7 @@ gnt_widget_class_init(GntWidgetClass *kl
 					 NULL, NULL,
 					 gnt_closure_marshal_VOID__INT_INT,
 					 G_TYPE_NONE, 2, G_TYPE_INT, G_TYPE_INT);
-	signals[SIG_SIZE_REQUEST] = 
+	signals[SIG_SIZE_REQUEST] =
 		g_signal_new("size_request",
 					 G_TYPE_FROM_CLASS(klass),
 					 G_SIGNAL_RUN_LAST,
@@ -211,7 +211,7 @@ gnt_widget_class_init(GntWidgetClass *kl
 					 NULL, NULL,
 					 g_cclosure_marshal_VOID__VOID,
 					 G_TYPE_NONE, 0);
-	signals[SIG_SIZE_CHANGED] = 
+	signals[SIG_SIZE_CHANGED] =
 		g_signal_new("size_changed",
 					 G_TYPE_FROM_CLASS(klass),
 					 G_SIGNAL_RUN_LAST,
@@ -219,7 +219,7 @@ gnt_widget_class_init(GntWidgetClass *kl
 					 NULL, NULL,
 					 gnt_closure_marshal_VOID__INT_INT,
 					 G_TYPE_NONE, 2, G_TYPE_INT, G_TYPE_INT);
-	signals[SIG_CONFIRM_SIZE] = 
+	signals[SIG_CONFIRM_SIZE] =
 		g_signal_new("confirm_size",
 					 G_TYPE_FROM_CLASS(klass),
 					 G_SIGNAL_RUN_LAST,
@@ -227,7 +227,7 @@ gnt_widget_class_init(GntWidgetClass *kl
 					 NULL, NULL,
 					 gnt_closure_marshal_BOOLEAN__INT_INT,
 					 G_TYPE_BOOLEAN, 2, G_TYPE_INT, G_TYPE_INT);
-	signals[SIG_KEY_PRESSED] = 
+	signals[SIG_KEY_PRESSED] =
 		g_signal_new("key_pressed",
 					 G_TYPE_FROM_CLASS(klass),
 					 G_SIGNAL_RUN_LAST,
@@ -236,7 +236,7 @@ gnt_widget_class_init(GntWidgetClass *kl
 					 gnt_closure_marshal_BOOLEAN__STRING,
 					 G_TYPE_BOOLEAN, 1, G_TYPE_STRING);
 
-	signals[SIG_CLICKED] = 
+	signals[SIG_CLICKED] =
 		g_signal_new("clicked",
 					 G_TYPE_FROM_CLASS(klass),
 					 G_SIGNAL_RUN_LAST,
@@ -245,7 +245,7 @@ gnt_widget_class_init(GntWidgetClass *kl
 					 gnt_closure_marshal_BOOLEAN__INT_INT_INT,
 					 G_TYPE_BOOLEAN, 3, G_TYPE_INT, G_TYPE_INT, G_TYPE_INT);
 
-	signals[SIG_CONTEXT_MENU] = 
+	signals[SIG_CONTEXT_MENU] =
 		g_signal_new("context-menu",
 					 G_TYPE_FROM_CLASS(klass),
 					 G_SIGNAL_RUN_LAST,
============================================================
--- libpurple/protocols/msn/contact.c	59977ff977337ad00704a287a241be0ca8fdccdd
+++ libpurple/protocols/msn/contact.c	f80010ade42c717c6f485be5c503e81d2757cc48
@@ -1,5 +1,5 @@
 /**
- * @file contact.c 
+ * @file contact.c
  * 	get MSN contacts via SOAP request
  *	created by MaYuan<mayuan2006 at gmail.com>
  *
@@ -339,7 +339,7 @@ msn_create_address_book(MsnSession *sess
 	g_return_if_fail(session != NULL);
 	g_return_if_fail(session->user != NULL);
 	g_return_if_fail(session->user->passport != NULL);
-	
+
 	purple_debug_info("msn", "Creating an Address Book.\n");
 
 	body = g_strdup_printf(MSN_ADD_ADDRESSBOOK_TEMPLATE,
@@ -1674,7 +1674,7 @@ msn_del_contact_from_list(MsnSession *se
 	msn_callback_state_set_who(state, passport);
 
 	user = msn_userlist_find_user(session->userlist, passport);
-	
+
 	if (list == MSN_LIST_PL) {
 		partner_scenario = MSN_PS_CONTACT_API;
 		if (user->networkid != MSN_NETWORK_PASSPORT)
@@ -1878,7 +1878,7 @@ msn_group_read_cb(MsnSoapMessage *req, M
 			} else if (state->action & MSN_MOVE_BUDDY) {
 				/* This will be freed when the add contact callback fires */
 				MsnCallbackState *new_state = msn_callback_state_dup(state);
-				msn_add_contact_to_group(session, new_state, state->who, guid); 
+				msn_add_contact_to_group(session, new_state, state->who, guid);
 				g_free(guid);
 				return;
 			}
============================================================
--- libpurple/protocols/msn/oim.c	ca0b232f7ea96a54b6731c3c3c06687f4e4d3099
+++ libpurple/protocols/msn/oim.c	1bd0549501e377295a489d9add53d593898c47e1
@@ -418,8 +418,8 @@ msn_oim_send_read_cb(MsnSoapMessage *req
 						str_reason = _("Message was not sent because an unknown "
 						               "error occurred.");
 					}
-					
-					msn_session_report_user(oim->session, msg->to_member, 
+
+					msn_session_report_user(oim->session, msg->to_member,
 						str_reason, PURPLE_MESSAGE_ERROR);
 					msn_session_report_user(oim->session, msg->to_member,
 						msg->oim_msg, PURPLE_MESSAGE_RAW);
============================================================
--- finch/libgnt/gntentry.c	f4a846770f36359df5a3d25b6df369c1a6310ac5
+++ finch/libgnt/gntentry.c	4ba0b5463d919088eceda71ad9656a40d25ffcf6
@@ -481,7 +481,7 @@ history_search(GntBindable *bind, GList 
 	GntEntry *entry = GNT_ENTRY(bind);
 	GList *iter;
 	const char *current;
-	
+
 	if (entry->history->prev && entry->search->needle)
 		current = entry->search->needle;
 	else
============================================================
--- libpurple/protocols/qq/buddy_opt.c	c2ee9b15f4bff640a20bc9d2aa3f95fd37a1cec8
+++ libpurple/protocols/qq/buddy_opt.c	9585204b2154297e91fecae0babb897f85ed18ad
@@ -114,7 +114,7 @@ qq_buddy_data *qq_buddy_data_find(Purple
 		purple_debug_error("QQ", "Can not find purple buddy of %u\n", uid);
 		return NULL;
 	}
-	
+
 	if ((bd = purple_buddy_get_protocol_data(buddy)) == NULL) {
 		purple_debug_error("QQ", "Can not find buddy data of %u\n", uid);
 		return NULL;
============================================================
--- libpurple/protocols/qq/qq.c	79a58f0ba3f9e2a14e926e529d34e8e9797a9b77
+++ libpurple/protocols/qq/qq.c	65b0db80d635b689e0b9f9608015cd0331e4f545
@@ -57,7 +57,7 @@
 #include "utils.h"
 #include "version.h"
 
-#define OPENQ_VERSION 		"0.3.2-p20" 
+#define OPENQ_VERSION 		"0.3.2-p20"
 
 static GList *server_list_build(gchar select)
 {
============================================================
--- finch/libgnt/gnttextview.c	0de28872b5233f96c03e420a4d1221feb7b2b857
+++ finch/libgnt/gnttextview.c	1eb84985613a3e710d232c18b72d4665aafa64cc
@@ -165,7 +165,7 @@ gnt_text_view_draw(GntWidget *widget)
 
 		if (showing + position > rows)
 			position = rows - showing;
-		
+
 		if (showing + position == rows && view->list && view->list->prev)
 			position = MAX(1, rows - 1 - showing);
 		else if (showing + position < rows && view->list && !view->list->prev)
@@ -456,7 +456,7 @@ gnt_text_view_init(GTypeInstance *instan
 	GntTextView *view = GNT_TEXT_VIEW(widget);
 	GntTextLine *line = g_new0(GntTextLine, 1);
 
-	GNT_WIDGET_SET_FLAGS(widget, GNT_WIDGET_NO_BORDER | GNT_WIDGET_NO_SHADOW | 
+	GNT_WIDGET_SET_FLAGS(widget, GNT_WIDGET_NO_BORDER | GNT_WIDGET_NO_SHADOW |
             GNT_WIDGET_GROW_Y | GNT_WIDGET_GROW_X);
 	widget->priv.minw = 5;
 	widget->priv.minh = 2;
@@ -636,7 +636,7 @@ void gnt_text_view_scroll(GntTextView *v
 			list = g_list_last(view->list);
 		view->list = list;
 	}
-		
+
 	gnt_widget_draw(GNT_WIDGET(view));
 }
 
@@ -644,7 +644,7 @@ void gnt_text_view_next_line(GntTextView
 {
 	GntTextLine *line = g_new0(GntTextLine, 1);
 	GList *list = view->list;
-	
+
 	view->list = g_list_prepend(g_list_first(view->list), line);
 	view->list = list;
 	gnt_widget_draw(GNT_WIDGET(view));
============================================================
--- finch/libgnt/test/focus.c	7a9b083926b6f0b297002315268a96971d147996
+++ finch/libgnt/test/focus.c	abbe344f2a5870c9d3f0c31f73049dc2daf48b2c
@@ -24,7 +24,7 @@ int main()
 	freopen(".error", "w", stderr);
 	gnt_init();
 #endif
-	
+
 	GntWidget *label = gnt_label_new("So wassup dudes and dudettes!!\u4e0a1\u6d772\u67003\u4f4e4\u67085\nSo this is, like,\nthe third line!! \\o/");
 	GntWidget *vbox, *hbox, *tree, *box, *button;
 	WINDOW *test;
@@ -78,7 +78,7 @@ int main()
 	gnt_box_add_widget(GNT_BOX(vbox), button);
 
 	gnt_box_add_widget(GNT_BOX(hbox), vbox);
-	
+
 	gnt_widget_show(hbox);
 
 #ifdef STANDALONE
============================================================
--- finch/libgnt/test/tv.c	1038f94c8f4b988ee5e799f8d27ee07798516572
+++ finch/libgnt/test/tv.c	17ac51775d286ffcfb03d5915c6c8838639ed800
@@ -45,7 +45,7 @@ key_pressed(GntWidget *w, const char *ke
 			return FALSE;
 		return TRUE;
 	}
-		
+
 	return FALSE;
 }
 
============================================================
--- finch/gntconv.c	b8ced2d04137efad17e22b90e6871d1d335af903
+++ finch/gntconv.c	f90604cda09e9264d42bfe6701836f484d439ed1
@@ -1155,7 +1155,7 @@ finch_conv_has_focus(PurpleConversation 
 	return FALSE;
 }
 
-static PurpleConversationUiOps conv_ui_ops = 
+static PurpleConversationUiOps conv_ui_ops =
 {
 	finch_create_conversation,
 	finch_destroy_conversation,
============================================================
--- finch/gntaccount.c	2f5867ac342d6f8b52a5fcb274b5297c51054e0f
+++ finch/gntaccount.c	cd758cc14bb4dedb51f79f2c229ca482c72028b1
@@ -308,7 +308,7 @@ update_user_splits(AccountEditDialog *di
 	if (!plugin)
 		return;
 	prplinfo = PURPLE_PLUGIN_PROTOCOL_INFO(plugin);
-	
+
 	username = dialog->account ? g_strdup(purple_account_get_username(dialog->account)) : NULL;
 
 	for (iter = prplinfo->user_splits; iter; iter = iter->next)
============================================================
--- finch/libgnt/test/combo.c	6925087231a3377b99ee974cd16ca2ddb5fd677e
+++ finch/libgnt/test/combo.c	fd79504969b22c32a66f3223777286e7ae5e2e96
@@ -37,7 +37,7 @@ int main()
 	freopen(".error", "w", stderr);
 	gnt_init();
 #endif
-	
+
 	box = gnt_box_new(FALSE, TRUE);
 	gnt_widget_set_name(box, "box");
 	gnt_box_set_alignment(GNT_BOX(box), GNT_ALIGN_MID);
============================================================
--- finch/gntconn.c	a14e5f5d478a6f61b28294aea688f28491bfc052
+++ finch/gntconn.c	da06c5fb762d7cf3fb8d9a8d932259f2a43127c3
@@ -159,7 +159,7 @@ finch_connection_get_handle(void)
 	return &handle;
 }
 
-static PurpleConnectionUiOps ops = 
+static PurpleConnectionUiOps ops =
 {
 	NULL, /* connect_progress */
 	NULL, /* connected */
============================================================
--- finch/gntnotify.c	5ec567ec485c751a5e7cefd19e8acd4b7bef5ee5
+++ finch/gntnotify.c	0aa0b8de803020f52b66b32047a50d406d87840e
@@ -130,7 +130,7 @@ static void finch_close_notify(PurpleNot
 
 	while (widget->parent)
 		widget = widget->parent;
-	
+
 	if (type == PURPLE_NOTIFY_SEARCHRESULTS)
 		purple_notify_searchresults_free(g_object_get_data(handle, "notify-results"));
 #if 1
@@ -489,7 +489,7 @@ finch_notify_uri(const char *url)
 	return finch_notify_message(PURPLE_NOTIFY_URI, _("URI"), url, NULL);
 }
 
-static PurpleNotifyUiOps ops = 
+static PurpleNotifyUiOps ops =
 {
 	finch_notify_message,
 	finch_notify_email,
============================================================
--- finch/libgnt/test/wm.c	168f1da8b0cfc02b2408d03f80b3a14aaaee74d8
+++ finch/libgnt/test/wm.c	9c6fa6c8a7c0876b1494150945a9fb176e6f708c
@@ -35,7 +35,7 @@ key_pressed(GntEntry *entry, const char 
 			gnt_widget_show(widget);
 		}
 	}
-	
+
 	return TRUE;
 }
 
@@ -61,7 +61,7 @@ int main()
 	gnt_main();
 
 	gnt_quit();
-	
+
 	return 0;
 }
 
============================================================
--- finch/libgnt/gntcheckbox.c	e4061aeb639399aafe9b84a68d1320e803b9027f
+++ finch/libgnt/gntcheckbox.c	5ec207fa47903c11605f231e3bd098c714cc6e1a
@@ -100,7 +100,7 @@ gnt_check_box_class_init(GntCheckBoxClas
 	wclass->key_pressed = gnt_check_box_key_pressed;
 	wclass->clicked = gnt_check_box_clicked;
 
-	signals[SIG_TOGGLED] = 
+	signals[SIG_TOGGLED] =
 		g_signal_new("toggled",
 					 G_TYPE_FROM_CLASS(klass),
 					 G_SIGNAL_RUN_LAST,
============================================================
--- finch/gntprefs.c	501731d7ce343a60f68c4f73c96cb7afa4d0a4f2
+++ finch/gntprefs.c	134b6f26598164780cd23e3160009dd78790d3ce
@@ -180,21 +180,21 @@ get_pref_field(Prefs *prefs)
 	return field;
 }
 
-static Prefs blist[] = 
+static Prefs blist[] =
 {
 	{PURPLE_PREF_BOOLEAN, "/finch/blist/idletime", N_("Show Idle Time"), NULL},
 	{PURPLE_PREF_BOOLEAN, "/finch/blist/showoffline", N_("Show Offline Buddies"), NULL},
 	{PURPLE_PREF_NONE, NULL, NULL, NULL}
 };
 
-static Prefs convs[] = 
+static Prefs convs[] =
 {
 	{PURPLE_PREF_BOOLEAN, "/finch/conversations/timestamps", N_("Show Timestamps"), NULL},
 	{PURPLE_PREF_BOOLEAN, "/finch/conversations/notify_typing", N_("Notify buddies when you are typing"), NULL},
 	{PURPLE_PREF_NONE, NULL, NULL, NULL}
 };
 
-static Prefs logging[] = 
+static Prefs logging[] =
 {
 	{PURPLE_PREF_STRING, "/purple/logging/format", N_("Log format"), get_log_options},
 	{PURPLE_PREF_BOOLEAN, "/purple/logging/log_ims", N_("Log IMs"), NULL},
============================================================
--- finch/gntrequest.c	9c7dc35fe49bbe8825302fc55681fb6e8d081cf5
+++ finch/gntrequest.c	a893723e3f647da31c6da8cf8258f83a2128d423
@@ -243,7 +243,7 @@ finch_request_choice(const char *title, 
 
 	setup_default_callback(window, cancel_cb, user_data);
 	gnt_widget_show(window);
-	
+
 	return window;
 }
 
============================================================
--- finch/libgnt/gntstyle.c	4320c8acbbd69eb81abc644aa5f6d1e7c2de0cac
+++ finch/libgnt/gntstyle.c	4d4a841acca29d7a21c7c845ea0f522d70e6013a
@@ -105,7 +105,7 @@ gboolean gnt_style_get_bool(GntStyle sty
 
 	if (bool_styles[style] != -1)
 		return bool_styles[style];
-	
+
 	str = gnt_style_get(style);
 
 	bool_styles[style] = str ? gnt_style_parse_bool(str) : def;
@@ -226,7 +226,7 @@ void gnt_style_read_actions(GType type, 
 	{
 		gsize len = 0;
 		char **keys;
-		
+
 		keys = g_key_file_get_keys(gkfile, name, &len, &error);
 		if (error)
 		{
@@ -280,7 +280,7 @@ gboolean gnt_style_read_menu_accels(cons
 	{
 		gsize len = 0;
 		char **keys;
-		
+
 		keys = g_key_file_get_keys(gkfile, kname, &len, &error);
 		if (error)
 		{
@@ -331,14 +331,14 @@ void gnt_styles_get_keyremaps(GType type
 #if GLIB_CHECK_VERSION(2,6,0)
 	char *name;
 	GError *error = NULL;
-	
+
 	name = g_strdup_printf("%s::remap", g_type_name(type));
 
 	if (g_key_file_has_group(gkfile, name))
 	{
 		gsize len = 0;
 		char **keys;
-		
+
 		keys = g_key_file_get_keys(gkfile, name, &len, &error);
 		if (error)
 		{
============================================================
--- finch/gntplugin.c	78941616499a6e323da3637ad1b4c295b0f2db9f
+++ finch/gntplugin.c	31afb258734e02f7522f45093dbab0f8148e0e72
@@ -64,7 +64,7 @@ decide_conf_button(PurplePlugin *plugin)
 static void
 decide_conf_button(PurplePlugin *plugin)
 {
-	if (purple_plugin_is_loaded(plugin) && 
+	if (purple_plugin_is_loaded(plugin) &&
 		((PURPLE_IS_GNT_PLUGIN(plugin) &&
 			FINCH_PLUGIN_UI_INFO(plugin) != NULL) ||
 		(plugin->info->prefs_info &&
@@ -262,7 +262,7 @@ install_selected_file_cb(gpointer handle
 	PurplePlugin *plugin;
 
 	g_return_if_fail(plugins.window);
-	
+
 	plugin = purple_plugin_probe(filename);
 	if (!plugin) {
 		purple_notify_error(handle, _("Error loading plugin"),
============================================================
--- finch/gntstatus.c	26ff1916749d19a3688851b030844191d1547cf3
+++ finch/gntstatus.c	a39b7e0be41c13a2dc6346279e823c01090edc98
@@ -314,7 +314,7 @@ save_savedstatus_cb(GntWidget *button, E
 		gnt_box_give_focus_to_child(GNT_BOX(edit->window), edit->title);
 		return;
 	}
-	
+
 	if (edit->saved == NULL)
 	{
 		edit->saved = purple_savedstatus_new(title, prim);
@@ -409,7 +409,7 @@ save_substatus_cb(GntWidget *widget, Edi
 	gnt_tree_change_text(GNT_TREE(sub->parent->tree), row, 1,
 			purple_status_type_get_name(type));
 	gnt_tree_change_text(GNT_TREE(sub->parent->tree), row, 2, message);
-	
+
 	gnt_widget_destroy(sub->window);
 }
 
============================================================
--- finch/plugins/gntgf.c	d676156ca7a1204b440e9ff8cbc3b28cbe4fa707
+++ finch/plugins/gntgf.c	fa5f65ff1d57f6c8b481b70d4ba43366b2b5236a
@@ -134,7 +134,7 @@ urgent(void)
 	ids = getenv("WINDOWID");
 	if (ids == NULL)
 		return;
-	
+
 	id = atoi(ids);
 
 	dpy = XOpenDisplay(NULL);
@@ -255,7 +255,7 @@ received_chat_msg(PurpleAccount *account
 
 	if (flags & PURPLE_MESSAGE_WHISPER)
 		return;
-	
+
 	nick = PURPLE_CONV_CHAT(conv)->nick;
 
 	if (g_utf8_collate(sender, nick) == 0)
@@ -401,7 +401,7 @@ init_plugin(PurplePlugin *plugin)
 {
 	purple_prefs_add_none("/plugins");
 	purple_prefs_add_none("/plugins/gnt");
-	
+
 	purple_prefs_add_none("/plugins/gnt/gntgf");
 	purple_prefs_add_none(PREFS_EVENT);
 
============================================================
--- finch/getopt.c	11e2e4aac7ed9a6da0f293e5b75ae5a3ae4027eb
+++ finch/getopt.c	c3f34ea69613a9d0b16e26f82881137bfdab8c71
@@ -178,7 +178,7 @@ static enum
 {
   REQUIRE_ORDER, PERMUTE, RETURN_IN_ORDER
 } ordering;
-
+
 #ifdef	__GNU_LIBRARY__
 /* We want to avoid inclusion of string.h with non-GNU libraries
    because there are many ways it can cause trouble.
@@ -219,7 +219,7 @@ my_bcopy (from, to, size)
     to[i] = from[i];
 }
 #endif				/* GNU C library.  */
-
+
 /* Handle permutation of arguments.  */
 
 /* Describe the part of ARGV that contains non-options that have
@@ -259,7 +259,7 @@ exchange (argv)
   first_nonopt += (optind - last_nonopt);
   last_nonopt = optind;
 }
-
+
 /* Scan elements of ARGV (whose length is ARGC) for option characters
    given in OPTSTRING.
 
@@ -663,7 +663,7 @@ getopt (argc, argv, optstring)
 }
 
 #endif	/* _LIBC or not __GNU_LIBRARY__.  */
-
+
 #ifdef TEST
 
 /* Compile with -DTEST to make an executable for use in testing
============================================================
--- finch/getopt1.c	88d90e132d490de12dcafd3876dc88ca70287f3c
+++ finch/getopt1.c	6f9b2439d409108cd12a2e9bceffc33250341453
@@ -81,7 +81,7 @@ getopt_long_only (argc, argv, options, l
 
 
 #endif	/* _LIBC or not __GNU_LIBRARY__.  */
-
+
 #ifdef TEST
 
 #include <stdio.h>
============================================================
--- pidgin/plugins/win32/winprefs/gtkappbar.c	a50df0ccfcf956290aaec2a44d3a5a8957e1325a
+++ pidgin/plugins/win32/winprefs/gtkappbar.c	f74c6494366e25fa07cff4645f1cf7aa6e819ff5
@@ -167,7 +167,7 @@ static void set_toolbar(HWND hwnd, gbool
         SetWindowLong(hwnd, GWL_EXSTYLE, style);
 	SetWindowPos(hwnd, 0, 0, 0, 0, 0,
 		SWP_NOMOVE | SWP_NOSIZE | SWP_NOACTIVATE);
-	
+
 /*	This really should be the following, but SWP_FRAMECHANGED strangely causes initermittent problems "Show Desktop" done more than once.
  *	Not having SWP_FRAMECHANGED *should* cause the Style not to be applied, but i haven't noticed any problems
  *			SWP_NOMOVE | SWP_NOSIZE | SWP_NOZORDER | SWP_FRAMECHANGED);
============================================================
--- pidgin/plugins/cap/cap.c	3efadfb1d42c7d1416bb9ab45d8e4f43165cc0da
+++ pidgin/plugins/cap/cap.c	345093e3e35c575bf62e5b4e1bc2e517d8d81c57
@@ -93,7 +93,7 @@ static double generate_prediction_for(Pu
 	}
 	sqlite3_free(sql);
 
-	
+
 	if(strcmp(purple_status_get_id(get_status_for(buddy)), "offline") == 0) {
 		/* This is kind of stupid, change it. */
 		if(prediction == 1.0f)
@@ -152,7 +152,7 @@ insert_cap_msg_count_success(const char 
 	purple_debug_info("cap", "%s\n", sql_select);
 
 	sqlite3_prepare(_db, sql_select, -1, &stmt, &tail);
-	
+
 	rc = sqlite3_step(stmt);
 
 	if(rc == SQLITE_DONE) {
@@ -189,7 +189,7 @@ insert_cap_status_count_success(const ch
 	purple_debug_info("cap", "%s\n", sql_select);
 
 	sqlite3_prepare(_db, sql_select, -1, &stmt, &tail);
-	
+
 	rc = sqlite3_step(stmt);
 
 	if(rc == SQLITE_DONE) {
@@ -226,7 +226,7 @@ insert_cap_msg_count_failed(const char *
 	purple_debug_info("cap", "%s\n", sql_select);
 
 	sqlite3_prepare(_db, sql_select, -1, &stmt, &tail);
-	
+
 	rc = sqlite3_step(stmt);
 
 	if(rc == SQLITE_DONE) {
@@ -263,7 +263,7 @@ insert_cap_status_count_failed(const cha
 	purple_debug_info("cap", "%s\n", sql_select);
 
 	sqlite3_prepare(_db, sql_select, -1, &stmt, &tail);
-	
+
 	rc = sqlite3_step(stmt);
 
 	if(rc == SQLITE_DONE) {
@@ -296,7 +296,7 @@ static void insert_cap_success(CapStatis
 		purple_status_get_id(get_status_for(stats->buddy));
 	struct tm *current_time;
 	int minute;
-	
+
 	if(stats->last_message == -1) {
 		time_t now = time(NULL);
 		current_time = localtime(&now);
@@ -306,7 +306,7 @@ static void insert_cap_success(CapStatis
 	minute = current_time->tm_min + current_time->tm_hour * 60;
 
 	insert_cap_msg_count_success(buddy_name, account_id, protocol_id, minute);
-	
+
 	insert_cap_status_count_success(buddy_name, account_id, protocol_id, status_id);
 
 	stats->last_message = -1;
@@ -324,9 +324,9 @@ static void insert_cap_failure(CapStatis
 	int minute = current_time->tm_min + current_time->tm_hour * 60;
 
 	insert_cap_msg_count_failed(buddy_name, account_id, protocol_id, minute);
-	
+
 	insert_cap_status_count_failed(buddy_name, account_id, protocol_id, status_id);
-	
+
 	stats->last_message = -1;
 	stats->last_message_status_id = NULL;
 }
@@ -384,7 +384,7 @@ received_im_msg(PurpleAccount *account, 
 	stats = get_stats_for(buddy);
 
 	/* insert_word_count(sender, buddy_name, words); */
-	
+
 	/* If we are waiting for a response from a prior message
 	 * then cancel the timeout callback. */
 	if(stats->timeout_source_id != 0) {
@@ -581,7 +581,7 @@ static gboolean create_database_connecti
 	g_free(path);
 	if(rc != SQLITE_OK)
 		return FALSE;
-	
+
 	/* Add tables here */
 	create_tables();
 	purple_debug_info("cap", "Database connection successfully made.\n");
@@ -652,7 +652,7 @@ static gboolean plugin_load(PurplePlugin
 	 * and the keys are a buddies account id (PurpleBuddy.name).
 	 * keys/values are automatically deleted */
 	_buddy_stats = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, destroy_stats);
-	
+
 	/* ? - Can't remember at the moment
 	 */
 	_my_offline_times = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, g_free);
@@ -668,7 +668,7 @@ static void add_plugin_functionality(Pur
 		return;
 
 	purple_debug_info("cap", "Adding plugin functionality.\n");
-	
+
 	/* Connect all the signals */
 	purple_signal_connect(purple_conversations_get_handle(), "sent-im-msg", plugin,
 			PURPLE_CALLBACK(sent_im_msg), NULL);
@@ -690,7 +690,7 @@ static void add_plugin_functionality(Pur
 
 	purple_signal_connect(purple_connections_get_handle(), "signed-on", plugin,
 			PURPLE_CALLBACK(signed_on), NULL);
-	
+
 	purple_signal_connect(purple_connections_get_handle(), "signed-off", plugin,
 			PURPLE_CALLBACK(signed_off), NULL);
 
@@ -713,7 +713,7 @@ static void remove_plugin_functionality(
 
 	/* If there are any timeouts waiting to be processed then cancel them */
 	g_hash_table_foreach(_buddy_stats, cancel_conversation_timeouts, NULL);
-	
+
 	/* Connect all the signals */
 	purple_signal_disconnect(purple_conversations_get_handle(), "sent-im-msg", plugin,
 			PURPLE_CALLBACK(sent_im_msg));
@@ -735,7 +735,7 @@ static void remove_plugin_functionality(
 
 	purple_signal_disconnect(purple_connections_get_handle(), "signed-on", plugin,
 			PURPLE_CALLBACK(signed_on));
-	
+
 	purple_signal_disconnect(purple_connections_get_handle(), "signed-off", plugin,
 			PURPLE_CALLBACK(signed_off));
 
@@ -751,13 +751,13 @@ static gboolean plugin_unload(PurplePlug
 
 static gboolean plugin_unload(PurplePlugin *plugin) {
 	purple_debug_info("cap", "CAP plugin unloading\n");
-	
+
 	/* clean up memory allocations */
 	if(_buddy_stats) {
 		g_hash_table_foreach(_buddy_stats, write_stats_on_unload, NULL);
 		g_hash_table_destroy(_buddy_stats);
 	}
-	 
+
 	 /* close database connection */
 	 destroy_database_connection();
 
@@ -856,13 +856,13 @@ static CapPrefsUI * create_cap_prefs_ui(
 
 	g_signal_connect(G_OBJECT(ui->msg_difference_input), "value-changed",
 		G_CALLBACK(numeric_spinner_prefs_cb), "/plugins/gtk/cap/max_msg_difference");
-	
+
 	g_signal_connect(G_OBJECT(ui->last_seen_input), "value-changed",
 		G_CALLBACK(numeric_spinner_prefs_cb), "/plugins/gtk/cap/max_seen_difference");
-	
+
 	g_signal_connect(G_OBJECT(ui->threshold_input), "value-changed",
 		G_CALLBACK(numeric_spinner_prefs_cb), "/plugins/gtk/cap/threshold");
-	
+
 	return ui;
 }
 
============================================================
--- finch/libgnt/wms/s.c	23596424cdd5d32c0300df1782778f704a92d320
+++ finch/libgnt/wms/s.c	db9671ebaae1db4ed7cd4ce858f31294caebdf25
@@ -146,11 +146,11 @@ s_mouse_clicked(GntWM *wm, GntMouseEvent
 	if (!widget)
 		return FALSE;
 		/* This might be a place to bring up a context menu */
-	
+
 	if (event != GNT_LEFT_MOUSE_DOWN ||
 			GNT_WIDGET_IS_FLAG_SET(widget, GNT_WIDGET_NO_BORDER))
 		return FALSE;
-	
+
 	gnt_widget_get_position(widget, &x, &y);
 	gnt_widget_get_size(widget, &w, &h);
 
============================================================
--- libpurple/win32/giowin32.c	eed063390671d28a0bf845d73bc03aa6d36182ba
+++ libpurple/win32/giowin32.c	05c23f96b74c1a8d2e8319c9e43c11047153d16b
@@ -72,14 +72,14 @@ struct _GIOWin32Channel {
 				 * as provided by WinSock.
 				 */
   GIOWin32ChannelType type;
-  
+
   gboolean debug;
 
   CRITICAL_SECTION mutex;
 
   /* This is used by G_IO_WIN32_WINDOWS_MESSAGES channels */
   HWND hwnd;			/* handle of window, or NULL */
-  
+
   /* Following fields are used by both fd and socket channels. */
   gboolean running;		/* Is reader thread running. FALSE if
 				 * EOF has been reached.
@@ -94,7 +94,7 @@ struct _GIOWin32Channel {
   gushort revents;
 
   /* Following fields used by fd channels for input */
-  
+
   /* Data is kept in a circular buffer. To be able to distinguish between
    * empty and full buffer, we cannot fill it completely, but have to
    * leave a one character gap.
@@ -154,7 +154,7 @@ g_io_win32_get_debug_flag (void)
   else
     return FALSE;
 #endif
-}  
+}
 
 static void
 g_io_channel_win32_init (GIOWin32Channel *channel)
@@ -178,7 +178,7 @@ create_events (GIOWin32Channel *channel)
 create_events (GIOWin32Channel *channel)
 {
   SECURITY_ATTRIBUTES sec_attrs;
-  
+
   sec_attrs.nLength = sizeof (SECURITY_ATTRIBUTES);
   sec_attrs.lpSecurityDescriptor = NULL;
   sec_attrs.bInheritHandle = FALSE;
@@ -254,7 +254,7 @@ init_reset_sockets (GIOWin32Channel *cha
       g_warning (G_STRLOC ": Error binding to reset_recv socket: %s\n",
 		 g_win32_error_message (WSAGetLastError ()));
     }
-  
+
   len = sizeof (local2);
   if (getsockname (channel->reset_recv, (struct sockaddr *)&local2, &len) == SOCKET_ERROR)
     {
@@ -292,12 +292,12 @@ select_thread (void *parameter)
 	     channel->fd,
 	     (guint) channel->data_avail_event,
 	     (guint) channel->data_avail_noticed_event);
-  
+
   channel->rdp = channel->wrp = 0;
   channel->running = TRUE;
 
   SetEvent (channel->space_avail_event);
-  
+
   while (channel->running)
     {
       FD_ZERO (&read_fds);
@@ -317,7 +317,7 @@ select_thread (void *parameter)
 	    FD_SET (channel->fd, &write_fds);
 	  if (watch->condition & G_IO_ERR)
 	    FD_SET (channel->fd, &except_fds);
-	  
+
 	  tmp = tmp->next;
 	}
       UNLOCK (channel->mutex);
@@ -328,9 +328,9 @@ select_thread (void *parameter)
 		 (FD_ISSET (channel->fd, &read_fds) ? " IN" : ""),
 		 (FD_ISSET (channel->fd, &write_fds) ? " OUT" : ""),
 		 (FD_ISSET (channel->fd, &except_fds) ? " ERR" : ""));
-      
+
       n = select (1, &read_fds, &write_fds, &except_fds, NULL);
-      
+
       LOCK (channel->mutex);
       if (channel->needs_close)
 	{
@@ -362,7 +362,7 @@ select_thread (void *parameter)
 	       (FD_ISSET (channel->fd, &read_fds) ? " IN" : ""),
 	       (FD_ISSET (channel->fd, &write_fds) ? " OUT" : ""),
 	       (FD_ISSET (channel->fd, &except_fds) ? " ERR" : ""));
-    
+
     if (FD_ISSET (channel->fd, &read_fds))
       channel->revents |= G_IO_IN;
     if (FD_ISSET (channel->fd, &write_fds))
@@ -418,9 +418,9 @@ g_io_win32_prepare (GSource *source,
   GIOWin32Watch *watch = (GIOWin32Watch *)source;
   GIOCondition buffer_condition = g_io_channel_get_buffer_condition (watch->channel);
   GIOWin32Channel *channel = (GIOWin32Channel *)watch->channel;
-  
+
   *timeout = -1;
-  
+
   if (channel->debug)
     g_print ("g_io_win32_prepare: for thread %#x buffer_condition:%#x\n"
 	     "  watch->pollfd.events:%#x watch->pollfd.revents:%#x channel->revents:%#x\n",
@@ -478,7 +478,7 @@ g_io_win32_check (GSource *source)
     {
       return (PeekMessage (&msg, channel->hwnd, 0, 0, PM_NOREMOVE));
     }
-  
+
   if (channel->type == G_IO_WIN32_SOCKET)
     {
       LOCK (channel->mutex);
@@ -503,14 +503,14 @@ g_io_win32_dispatch (GSource     *source
   GIOFunc func = (GIOFunc)callback;
   GIOWin32Watch *watch = (GIOWin32Watch *)source;
   GIOCondition buffer_condition = g_io_channel_get_buffer_condition (watch->channel);
-  
+
   if (!func)
     {
       g_warning (G_STRLOC ": GIOWin32Watch dispatched without callback\n"
 		 "You must call g_source_connect().");
       return FALSE;
     }
-  
+
   return (*func) (watch->channel,
 		  (watch->pollfd.revents | buffer_condition) & watch->condition,
 		  user_data);
@@ -522,7 +522,7 @@ g_io_win32_finalize (GSource *source)
   GIOWin32Watch *watch = (GIOWin32Watch *)source;
   GIOWin32Channel *channel = (GIOWin32Channel *)watch->channel;
   char send_buffer[] = "f";
-  
+
   LOCK (channel->mutex);
   if (channel->debug)
     g_print ("g_io_win32_finalize: channel with thread %#x\n",
@@ -563,18 +563,18 @@ g_io_win32_create_watch (GIOChannel    *
 
   source = g_source_new (&wp_g_io_watch_funcs, sizeof (GIOWin32Watch));
   watch = (GIOWin32Watch *)source;
-  
+
   watch->channel = channel;
   g_io_channel_ref (channel);
-  
+
   watch->condition = condition;
-  
+
   if (win32_channel->data_avail_event == NULL)
     create_events (win32_channel);
 
   watch->pollfd.fd = (gint) win32_channel->data_avail_event;
   watch->pollfd.events = condition;
-  
+
   if (win32_channel->debug)
     g_print ("g_io_win32_create_watch: fd:%d condition:%#x handle:%#x\n",
 	     win32_channel->fd, condition, watch->pollfd.fd);
@@ -597,7 +597,7 @@ g_io_win32_free (GIOChannel *channel)
 g_io_win32_free (GIOChannel *channel)
 {
   GIOWin32Channel *win32_channel = (GIOWin32Channel *)channel;
-  
+
   if (win32_channel->debug)
     g_print ("thread %#x: freeing channel, fd: %d\n",
 	     win32_channel->thread_id,
@@ -643,7 +643,7 @@ repeat:
 
   if (win32_channel->debug)
     g_print ("g_io_win32_sock_read: recv:%d\n", result);
-  
+
   if (result == SOCKET_ERROR)
     {
       *bytes_read = 0;
@@ -674,7 +674,7 @@ repeat:
 	internal_status = G_IO_STATUS_EOF;
     }
 
-  if ((internal_status == G_IO_STATUS_EOF) || 
+  if ((internal_status == G_IO_STATUS_EOF) ||
       (internal_status == G_IO_STATUS_ERROR))
     {
       LOCK (win32_channel->mutex);
@@ -697,7 +697,7 @@ g_io_win32_sock_write (GIOChannel  *chan
   gint result;
   GIOChannelError error = G_IO_STATUS_NORMAL;
   char send_buffer[] = "sw";
-  
+
   if (win32_channel->debug)
     g_print ("g_io_win32_sock_write: sockfd:%d count:%d\n",
 	     win32_channel->fd, count);
@@ -705,10 +705,10 @@ repeat:
 repeat:
 #endif
   result = send (win32_channel->fd, buf, count, 0);
-  
+
   if (win32_channel->debug)
     g_print ("g_io_win32_sock_write: send:%d\n", result);
-  
+
   if (result == SOCKET_ERROR)
     {
       *bytes_written = 0;
@@ -767,7 +767,7 @@ g_io_win32_sock_close (GIOChannel *chann
 	g_print ("thread %#x: closing socket %d\n",
 		 win32_channel->thread_id,
 		 win32_channel->fd);
-      
+
       closesocket (win32_channel->fd);
       win32_channel->fd = -1;
     }
============================================================
--- finch/libgnt/gntbindable.c	e8d783cda3b3e933b372cfcf12dc966abbaab034
+++ finch/libgnt/gntbindable.c	7ae258358de1f5cbddadb5e13f37115ea56e942f
@@ -48,7 +48,7 @@ static struct
 	GList * params;       /* The list of paramaters */
 } rebind_info;
 
-static void 
+static void
 gnt_bindable_free_rebind_info(void)
 {
 	g_free(rebind_info.name);
@@ -92,7 +92,7 @@ gnt_bindable_rebinding_grab_key(GntBinda
 		if (!strcmp(text, GNT_KEY_CTRL_I) || !strcmp(text, GNT_KEY_ENTER)) {
 			return FALSE;
 		}
-		
+
 		tmp = gnt_key_lookup(text);
 		new_text = g_strdup_printf("KEY: \"%s\"", tmp);
 		gnt_text_view_clear(textview);
@@ -105,7 +105,7 @@ gnt_bindable_rebinding_grab_key(GntBinda
 		return TRUE;
 	}
 	return FALSE;
-} 
+}
 static void
 gnt_bindable_rebinding_activate(GntBindable *data, gpointer bindable)
 {
@@ -154,18 +154,18 @@ gnt_bindable_rebinding_activate(GntBinda
 	g_signal_connect(G_OBJECT(win), "key_pressed", G_CALLBACK(gnt_bindable_rebinding_grab_key), key_textview);
 
 	button_box = gnt_box_new(FALSE, FALSE);
-	
+
 	bind_button = gnt_button_new("BIND");
 	gnt_widget_set_name(bind_button, "bind");
 	gnt_box_add_widget(GNT_BOX(button_box), bind_button);
-	
+
 	cancel_button = gnt_button_new("Cancel");
 	gnt_widget_set_name(cancel_button, "cancel");
 	gnt_box_add_widget(GNT_BOX(button_box), cancel_button);
-	
+
 	g_signal_connect(G_OBJECT(bind_button), "activate", G_CALLBACK(gnt_bindable_rebinding_rebind), win);
 	g_signal_connect(G_OBJECT(cancel_button), "activate", G_CALLBACK(gnt_bindable_rebinding_cancel), win);
-	
+
 	gnt_box_add_widget(GNT_BOX(vbox), button_box);
 
 	gnt_box_add_widget(GNT_BOX(win), vbox);
@@ -320,7 +320,7 @@ gnt_bindable_perform_action_named(GntBin
 	while ((p = va_arg(args, void *)) != NULL)
 		list = g_list_append(list, p);
 	va_end(args);
-	
+
 	action = g_hash_table_lookup(klass->actions, name);
 	if (action && action->u.action) {
 		return action->u.action(bindable, list);
============================================================
--- finch/libgnt/gntwm.c	1107af6ea0aef7f5cb7fa0465b25e2554d15c943
+++ finch/libgnt/gntwm.c	d08041c99b3a07a2d8fa4d5b91167967e866b1bc
@@ -151,7 +151,7 @@ gnt_wm_copy_win(GntWidget *widget, GntNo
 /**
  * The following is a workaround for a bug in most versions of ncursesw.
  * Read about it in: http://article.gmane.org/gmane.comp.lib.ncurses.bugs/2751
- * 
+ *
  * In short, if a panel hides one cell of a multi-cell character, then the rest
  * of the characters in that line get screwed. The workaround here is to erase
  * any such character preemptively.
@@ -665,7 +665,7 @@ list_of_windows(GntWM *wm, gboolean work
 	tree = wm->windows->tree;
 
 	gnt_box_set_title(GNT_BOX(win), workspace ? "Workspace List" : "Window List");
-	
+
 	populate_window_list(wm, workspace);
 
 	if (wm->cws->ordered)
@@ -762,7 +762,7 @@ dump_file_save(GntFileSel *fs, const cha
 				{  \
 					fprintf(file, "%s", end);  \
 				}  \
-			} while (0) 
+			} while (0)
 
 			CHECK(A_BOLD, "<b>", "</b>");
 			CHECK(A_UNDERLINE, "<u>", "</u>");
@@ -800,7 +800,7 @@ dump_file_save(GntFileSel *fs, const cha
 				ADJUST(bg.r);
 				ADJUST(bg.b);
 				ADJUST(bg.g);
-				
+
 				if (x) fprintf(file, "</span>");
 				fprintf(file, "<span style=\"background:#%02x%02x%02x;color:#%02x%02x%02x\">",
 						bg.r, bg.g, bg.b, fg.r, fg.g, fg.b);
@@ -916,7 +916,7 @@ shift_right(GntBindable *bindable, GList
 shift_right(GntBindable *bindable, GList *null)
 {
 	GntWM *wm = GNT_WM(bindable);
-	
+
 	if (wm->_list.window)
 		return TRUE;
 
@@ -1032,7 +1032,7 @@ window_reverse(GntWidget *win, gboolean 
 
 	if (GNT_WIDGET_IS_FLAG_SET(win, GNT_WIDGET_NO_BORDER))
 		return;
-	
+
 	d = win->window;
 	gnt_widget_get_size(win, &w, &h);
 
@@ -1405,8 +1405,8 @@ gnt_wm_class_init(GntWMClass *klass)
 	klass->key_pressed  = NULL;
 	klass->mouse_clicked = NULL;
 	klass->give_focus = gnt_wm_give_focus;
-	
-	signals[SIG_NEW_WIN] = 
+
+	signals[SIG_NEW_WIN] =
 		g_signal_new("new_win",
 					 G_TYPE_FROM_CLASS(klass),
 					 G_SIGNAL_RUN_LAST,
@@ -1414,7 +1414,7 @@ gnt_wm_class_init(GntWMClass *klass)
 					 NULL, NULL,
 					 g_cclosure_marshal_VOID__POINTER,
 					 G_TYPE_NONE, 1, G_TYPE_POINTER);
-	signals[SIG_DECORATE_WIN] = 
+	signals[SIG_DECORATE_WIN] =
 		g_signal_new("decorate_win",
 					 G_TYPE_FROM_CLASS(klass),
 					 G_SIGNAL_RUN_LAST,
@@ -1422,7 +1422,7 @@ gnt_wm_class_init(GntWMClass *klass)
 					 NULL, NULL,
 					 g_cclosure_marshal_VOID__POINTER,
 					 G_TYPE_NONE, 1, G_TYPE_POINTER);
-	signals[SIG_CLOSE_WIN] = 
+	signals[SIG_CLOSE_WIN] =
 		g_signal_new("close_win",
 					 G_TYPE_FROM_CLASS(klass),
 					 G_SIGNAL_RUN_LAST,
@@ -1430,7 +1430,7 @@ gnt_wm_class_init(GntWMClass *klass)
 					 NULL, NULL,
 					 g_cclosure_marshal_VOID__POINTER,
 					 G_TYPE_NONE, 1, G_TYPE_POINTER);
-	signals[SIG_CONFIRM_RESIZE] = 
+	signals[SIG_CONFIRM_RESIZE] =
 		g_signal_new("confirm_resize",
 					 G_TYPE_FROM_CLASS(klass),
 					 G_SIGNAL_RUN_LAST,
@@ -1439,7 +1439,7 @@ gnt_wm_class_init(GntWMClass *klass)
 					 gnt_closure_marshal_BOOLEAN__POINTER_POINTER_POINTER,
 					 G_TYPE_BOOLEAN, 3, G_TYPE_POINTER, G_TYPE_POINTER, G_TYPE_POINTER);
 
-	signals[SIG_CONFIRM_MOVE] = 
+	signals[SIG_CONFIRM_MOVE] =
 		g_signal_new("confirm_move",
 					 G_TYPE_FROM_CLASS(klass),
 					 G_SIGNAL_RUN_LAST,
@@ -1448,7 +1448,7 @@ gnt_wm_class_init(GntWMClass *klass)
 					 gnt_closure_marshal_BOOLEAN__POINTER_POINTER_POINTER,
 					 G_TYPE_BOOLEAN, 3, G_TYPE_POINTER, G_TYPE_POINTER, G_TYPE_POINTER);
 
-	signals[SIG_RESIZED] = 
+	signals[SIG_RESIZED] =
 		g_signal_new("window_resized",
 					 G_TYPE_FROM_CLASS(klass),
 					 G_SIGNAL_RUN_LAST,
@@ -1456,7 +1456,7 @@ gnt_wm_class_init(GntWMClass *klass)
 					 NULL, NULL,
 					 g_cclosure_marshal_VOID__POINTER,
 					 G_TYPE_NONE, 1, G_TYPE_POINTER);
-	signals[SIG_MOVED] = 
+	signals[SIG_MOVED] =
 		g_signal_new("window_moved",
 					 G_TYPE_FROM_CLASS(klass),
 					 G_SIGNAL_RUN_LAST,
@@ -1464,7 +1464,7 @@ gnt_wm_class_init(GntWMClass *klass)
 					 NULL, NULL,
 					 g_cclosure_marshal_VOID__POINTER,
 					 G_TYPE_NONE, 1, G_TYPE_POINTER);
-	signals[SIG_UPDATE_WIN] = 
+	signals[SIG_UPDATE_WIN] =
 		g_signal_new("window_update",
 					 G_TYPE_FROM_CLASS(klass),
 					 G_SIGNAL_RUN_LAST,
@@ -1473,7 +1473,7 @@ gnt_wm_class_init(GntWMClass *klass)
 					 g_cclosure_marshal_VOID__POINTER,
 					 G_TYPE_NONE, 1, G_TYPE_POINTER);
 
-	signals[SIG_GIVE_FOCUS] = 
+	signals[SIG_GIVE_FOCUS] =
 		g_signal_new("give_focus",
 					 G_TYPE_FROM_CLASS(klass),
 					 G_SIGNAL_RUN_LAST,
@@ -1482,7 +1482,7 @@ gnt_wm_class_init(GntWMClass *klass)
 					 g_cclosure_marshal_VOID__POINTER,
 					 G_TYPE_NONE, 1, G_TYPE_POINTER);
 
-	signals[SIG_MOUSE_CLICK] = 
+	signals[SIG_MOUSE_CLICK] =
 		g_signal_new("mouse_clicked",
 					 G_TYPE_FROM_CLASS(klass),
 					 G_SIGNAL_RUN_LAST,
@@ -1491,7 +1491,7 @@ gnt_wm_class_init(GntWMClass *klass)
 					 gnt_closure_marshal_BOOLEAN__INT_INT_INT_POINTER,
 					 G_TYPE_BOOLEAN, 4, G_TYPE_INT, G_TYPE_INT, G_TYPE_INT, G_TYPE_POINTER);
 
-	signals[SIG_TERMINAL_REFRESH] = 
+	signals[SIG_TERMINAL_REFRESH] =
 		g_signal_new("terminal-refresh",
 					 G_TYPE_FROM_CLASS(klass),
 					 G_SIGNAL_RUN_LAST,
============================================================
--- pidgin/gtkscrollbook.c	f6d476c69c02736cb622870a8531a05204d8c4ad
+++ pidgin/gtkscrollbook.c	937b264a42c9cb5ff2d0e15c067d04db9e241c3f
@@ -141,7 +141,7 @@ scroll_close_cb(PidginScrollBook *scroll
 static gboolean
 scroll_close_cb(PidginScrollBook *scroll_book, GdkEventButton *event)
 {
-	if (event->type == GDK_BUTTON_PRESS)	
+	if (event->type == GDK_BUTTON_PRESS)
 		gtk_widget_destroy(gtk_notebook_get_nth_page(GTK_NOTEBOOK(scroll_book->notebook), gtk_notebook_get_current_page(GTK_NOTEBOOK(scroll_book->notebook))));
 	return FALSE;
 }
============================================================
--- libpurple/plugins/autoaccept.c	37512f63df84b95ff5d4882431512e06ddfe3605
+++ libpurple/plugins/autoaccept.c	a6540b7a7d2f48c141737052911b01b5e275b303
@@ -105,7 +105,7 @@ file_recv_request_cb(PurpleXfer *xfer, g
 	} else {
 		accept_setting = purple_prefs_get_int(PREF_STRANGER);
 	}
-    
+
 	switch (accept_setting)
 	{
 		case FT_ASK:
@@ -197,7 +197,7 @@ set_auto_accept_settings(PurpleBlistNode
 		node = purple_blist_node_get_parent(node);
 	g_return_if_fail(PURPLE_BLIST_NODE_IS_CONTACT(node));
 
-	message = g_strdup_printf(_("When a file-transfer request arrives from %s"), 
+	message = g_strdup_printf(_("When a file-transfer request arrives from %s"),
 					purple_contact_get_alias((PurpleContact *)node));
 	purple_request_choice(plugin, _("Set Autoaccept Setting"), message,
 						NULL, purple_blist_node_get_int(node, "autoaccept"),
============================================================
--- libpurple/plugins/offlinemsg.c	6dab62aba4d2bce7233fa239b1541415be2a517c
+++ libpurple/plugins/offlinemsg.c	dc95c3930a80ddab7f9aa3c410fc3d9e95d922f2
@@ -89,7 +89,7 @@ record_pounce(OfflineMsg *offline)
 
 	purple_pounce_action_set_enabled(pounce, "send-message", TRUE);
 	purple_pounce_action_set_attribute(pounce, "send-message", "message", offline->message);
- 
+
 	conv = offline->conv;
 	if (!purple_conversation_get_data(conv, "plugin_pack:offlinemsg"))
 		purple_conversation_write(conv, NULL, _("The rest of the messages will be saved "
@@ -156,7 +156,7 @@ sending_msg_cb(PurpleAccount *account, c
 		ask = g_strdup_printf(_("\"%s\" is currently offline. Do you want to save the "
 						"rest of the messages in a pounce and automatically send them "
 						"when \"%s\" logs back in?"), who, who);
-	
+
 		purple_request_action(handle, _("Offline Message"), ask,
 					_("You can edit/delete the pounce from the `Buddy Pounces' dialog"),
 					0,
============================================================
--- pidgin/plugins/convcolors.c	c9285eb2b5f6f9daace3c0edab2d62a56f0a3484
+++ pidgin/plugins/convcolors.c	84887a693f1ec780fd026113f3beb9f727cef0db
@@ -82,7 +82,7 @@ static struct
 	PurpleMessageFlags flag;
 	char *prefix;
 	const char *text;
-} formats[] = 
+} formats[] =
 {
 	{PURPLE_MESSAGE_ERROR, PREF_ERROR, N_("Error Messages")},
 	{PURPLE_MESSAGE_NICK, PREF_NICK, N_("Highlighted Messages")},
@@ -393,7 +393,7 @@ get_config_frame(PurplePlugin *plugin)
 	return ret;
 }
 
-static PidginPluginUiInfo ui_info = 
+static PidginPluginUiInfo ui_info =
 {
 	get_config_frame,
 	0,
============================================================
--- pidgin/plugins/markerline.c	f63149a27a8d80b0deb03288b7a4082b044f2bda
+++ pidgin/plugins/markerline.c	2b60a4254e8361b0fd2e4592f611c7e3befebc6f
@@ -66,7 +66,7 @@ imhtml_expose_cb(GtkWidget *widget, GdkE
 
 		gtk_text_view_get_iter_location(GTK_TEXT_VIEW(widget), &iter, &buf);
 		last_y = buf.y + buf.height;
-		pad = (gtk_text_view_get_pixels_below_lines(GTK_TEXT_VIEW(widget)) + 
+		pad = (gtk_text_view_get_pixels_below_lines(GTK_TEXT_VIEW(widget)) +
 				gtk_text_view_get_pixels_above_lines(GTK_TEXT_VIEW(widget))) / 2;
 		last_y += pad;
 	}
@@ -132,7 +132,7 @@ window_resized(GtkWidget *w, GdkEventCon
 	GList *list;
 
 	list = pidgin_conv_window_get_gtkconvs(win);
-	
+
 	for (; list; list = list->next)
 		update_marker_for_gtkconv(list->data);
 
============================================================
--- libpurple/example/nullclient.c	23ee636379a805df74c7580277b9937b7078cce7
+++ libpurple/example/nullclient.c	260f65e0b862614dbd86173377ed47e750175e4d
@@ -96,7 +96,7 @@ static guint glib_input_add(gint fd, Pur
 	return closure->result;
 }
 
-static PurpleEventLoopUiOps glib_eventloops = 
+static PurpleEventLoopUiOps glib_eventloops =
 {
 	g_timeout_add,
 	g_source_remove,
@@ -134,7 +134,7 @@ null_write_conv(PurpleConversation *conv
 			name, message);
 }
 
-static PurpleConversationUiOps null_conv_uiops = 
+static PurpleConversationUiOps null_conv_uiops =
 {
 	NULL,                      /* create_conversation  */
 	NULL,                      /* destroy_conversation */
@@ -167,7 +167,7 @@ null_ui_init(void)
 	purple_conversations_set_ui_ops(&null_conv_uiops);
 }
 
-static PurpleCoreUiOps null_core_uiops = 
+static PurpleCoreUiOps null_core_uiops =
 {
 	NULL,
 	NULL,
============================================================
--- finch/gntft.c	300cdfeb93f91e3f971648d6aba685dcdef3d252
+++ finch/gntft.c	ec619869bdf5299326659ca376de5734b5f5195b
@@ -356,7 +356,7 @@ finch_xfer_dialog_remove_xfer(PurpleXfer
 
 	if (xfer_dialog->num_transfers == 0 && !xfer_dialog->keep_open)
 		finch_xfer_dialog_destroy();
-	else 
+	else
 		update_title_progress();
 	purple_xfer_unref(xfer);
 }
============================================================
--- finch/libgnt/gntclipboard.c	169146375a165989f6508edaf72b7b2d7c658841
+++ finch/libgnt/gntclipboard.c	622e0f38d72f8e1a325335de409a5e2565fb2692
@@ -32,7 +32,7 @@ gnt_clipboard_class_init(GntClipboardCla
 static void
 gnt_clipboard_class_init(GntClipboardClass *klass)
 {
-	signals[SIG_CLIPBOARD] = 
+	signals[SIG_CLIPBOARD] =
 		g_signal_new("clipboard_changed",
 					 G_TYPE_FROM_CLASS(klass),
 					 G_SIGNAL_RUN_LAST,
============================================================
--- finch/libgnt/gntfilesel.c	f6fe5c3acc4ef431efcfd25d2468d0d6707880e9
+++ finch/libgnt/gntfilesel.c	774d8d679d2e3fb07b682c1e05b8df35302b84e8
@@ -245,7 +245,7 @@ local_read_fn(const char *path, GList **
 	GDir *dir;
 	GntFile *file;
 	const char *str;
-	
+
 	dir = g_dir_open(path, 0, error);
 	if (dir == NULL || (error && *error)) {
 		return FALSE;
@@ -315,7 +315,7 @@ location_changed(GntFileSel *sel, GError
 		success = sel->read_fn(sel->current, &files, err);
 	else
 		success = local_read_fn(sel->current, &files, err);
-	
+
 	if (!success || *err) {
 		gnt_warning("error opening location %s (%s)",
 			sel->current, *err ? (*err)->message : "reason unknown");
@@ -356,7 +356,7 @@ dir_key_pressed(GntTree *tree, const cha
 
 		if (!str)
 			return TRUE;
-		
+
 		path = g_build_filename(sel->current, str, NULL);
 		dir = g_path_get_basename(sel->current);
 		if (!gnt_file_sel_set_current_location(sel, path)) {
@@ -597,7 +597,7 @@ gnt_file_sel_class_init(GntFileSelClass 
 	orig_size_request = kl->size_request;
 	kl->size_request = gnt_file_sel_size_request;
 
-	signals[SIG_FILE_SELECTED] = 
+	signals[SIG_FILE_SELECTED] =
 		g_signal_new("file_selected",
 					 G_TYPE_FROM_CLASS(klass),
 					 G_SIGNAL_RUN_LAST,
============================================================
--- libpurple/protocols/null/nullprpl.c	0fd949edbb3ad21a0215f7e8f422e6f1905945c0
+++ libpurple/protocols/null/nullprpl.c	f667e6934ddc71d288e34e4cb7a8c6f0835b07f0
@@ -8,18 +8,18 @@
  * Nullprpl is a mock protocol plugin for Pidgin and libpurple. You can create
  * accounts with it, sign on and off, add buddies, and send and receive IMs,
  * all without connecting to a server!
- * 
+ *
  * Beyond that basic functionality, nullprpl supports presence and
  * away/available messages, offline messages, user info, typing notification,
  * privacy allow/block lists, chat rooms, whispering, room lists, and protocol
  * icons and emblems. Notable missing features are file transfer and account
  * registration and authentication.
- * 
+ *
  * Nullprpl is intended as an example of how to write a libpurple protocol
  * plugin. It doesn't contain networking code or an event loop, but it does
  * demonstrate how to use the libpurple API to do pretty much everything a prpl
  * might need to do.
- * 
+ *
  * Nullprpl is also a useful tool for hacking on Pidgin, Finch, and other
  * libpurple clients. It's a full-featured protocol plugin, but doesn't depend
  * on an external server, so it's a quick and easy way to exercise test new
@@ -191,7 +191,7 @@ static void report_status_change(PurpleC
 }
 
 
-/* 
+/*
  * UI callbacks
  */
 static void nullprpl_input_user_info(PurplePluginAction *action)
@@ -355,7 +355,7 @@ static GHashTable *nullprpl_chat_info_de
   defaults = g_hash_table_new_full(g_str_hash, g_str_equal, NULL, g_free);
   g_hash_table_insert(defaults, "room", g_strdup("default"));
   return defaults;
-}  
+}
 
 static void nullprpl_login(PurpleAccount *acct)
 {
@@ -382,7 +382,7 @@ static void nullprpl_login(PurpleAccount
   /* fetch stored offline messages */
   purple_debug_info("nullprpl", "checking for offline messages for %s\n",
                     acct->username);
-  offline_messages = g_hash_table_lookup(goffline_messages, acct->username); 
+  offline_messages = g_hash_table_lookup(goffline_messages, acct->username);
   while (offline_messages) {
     GOfflineMessage *message = (GOfflineMessage *)offline_messages->data;
     purple_debug_info("nullprpl", "delivering offline message to %s: %s\n",
============================================================
--- libpurple/protocols/jabber/usernick.c	6dc53629f9aab124e9d9198f804eb926c15309be
+++ libpurple/protocols/jabber/usernick.c	8cca759f55aadd116331fe06b65f5b783f10be6c
@@ -68,7 +68,7 @@ static void do_nick_got_own_nick_cb(Jabb
 static void do_nick_got_own_nick_cb(JabberStream *js, const char *from, xmlnode *items) {
 	char *oldnickname = NULL;
 	xmlnode *item = NULL;
-	
+
 	if (items)
 		item = xmlnode_get_child(items,"item");
 
============================================================
--- libpurple/protocols/jabber/caps.c	cc562b0d2df8fbd73a33ce5694ec1c8ada4de166
+++ libpurple/protocols/jabber/caps.c	4838dbd3cd589fb7099183439f189e2a5f224b62
@@ -803,7 +803,7 @@ static GList* jabber_caps_xdata_get_fiel
 	return fields;
 }
 
-static void 
+static void
 append_escaped_string(PurpleCipherContext *context, const gchar *str)
 {
 	if (str && *str) {
============================================================
--- libpurple/protocols/silc10/buddy.c	58fe82915fa552eb1f28bda8c16c6c7bcd23cdbc
+++ libpurple/protocols/silc10/buddy.c	e8fabb3da669b214cd4a70cafc1f78657d1af639
@@ -93,7 +93,7 @@ silcpurple_buddy_keyagr_cb(SilcClient cl
 								NULL, NULL, key, a->responder);
 			silc_ske_free_key_material(key);
 
-			
+
 			/* Open IM window */
 			convo = purple_find_conversation_with_account(PURPLE_CONV_TYPE_IM,
 									client_entry->nickname, sg->account);
@@ -1739,7 +1739,7 @@ void silcpurple_buddy_set_icon(PurpleCon
 
 	obj.mime = icon = silc_mime_encode(mime, &obj.mime_len);
 	if (obj.mime)
-		silc_client_attribute_add(client, conn, 
+		silc_client_attribute_add(client, conn,
 					  SILC_ATTRIBUTE_USER_ICON, &obj, sizeof(obj));
 
 	silc_free(icon);
============================================================
--- libpurple/protocols/silc10/chat.c	ada930efabf7448689814ac64dd5ba801780814d
+++ libpurple/protocols/silc10/chat.c	25959233db7fff02b81c4d31d1d63f271814695e
@@ -1065,7 +1065,7 @@ char *silcpurple_get_chat_name(GHashTabl
 char *silcpurple_get_chat_name(GHashTable *data)
 {
 	return g_strdup(g_hash_table_lookup(data, "channel"));
-}	
+}
 
 void silcpurple_chat_join(PurpleConnection *gc, GHashTable *data)
 {
============================================================
--- libpurple/protocols/silc10/ops.c	f4e1110872a958d61c16f845375a86639365c37a
+++ libpurple/protocols/silc10/ops.c	4c5f7785eaaa7987406a82f04f20134d4c584d00
@@ -124,7 +124,7 @@ silcpurple_mime_message(SilcClient clien
 
 		if (channel)
 			silc_channel_message(client, conn, sender, channel,
-					     payload, key, 
+					     payload, key,
 					     SILC_MESSAGE_FLAG_UTF8, data,
 					     data_len);
 		else
@@ -165,11 +165,11 @@ silcpurple_mime_message(SilcClient clien
 		if (imgid) {
 			cflags |= PURPLE_MESSAGE_IMAGES | PURPLE_MESSAGE_RECV;
 			g_snprintf(tmp, sizeof(tmp), "<IMG ID=\"%d\">", imgid);
-		  
+
 			if (channel)
 				serv_got_chat_in(gc, purple_conv_chat_get_id(PURPLE_CONV_CHAT(convo)),
 				 		 sender->nickname ?
-				 		  sender->nickname : 
+				 		  sender->nickname :
 						 "<unknown>", cflags,
 						 tmp, time(NULL));
 			else
@@ -364,7 +364,7 @@ silc_private_message(SilcClient client, 
 		memset(enc, 0, sizeof(enc));
 
 		if (!silc_mime_parse(message, message_len, NULL, 0,
-		    type, sizeof(type) - 1, enc, sizeof(enc) - 1, &data, 
+		    type, sizeof(type) - 1, enc, sizeof(enc) - 1, &data,
 		    &data_len))
 			return;
 
============================================================
--- libpurple/protocols/silc10/silc.c	916b57c324445356514ebeb97df4f65475e91fe1
+++ libpurple/protocols/silc10/silc.c	b550a938d1a9640cf956e57ef8876279ccb88b87
@@ -388,7 +388,7 @@ silcpurple_close(PurpleConnection *gc)
 	GHashTable *ui_info;
 	const char *ui_name = NULL, *ui_website = NULL;
 	char *quit_msg;
-	
+
 	g_return_if_fail(sg != NULL);
 
 	ui_info = purple_core_get_ui_info();
@@ -1557,7 +1557,7 @@ static PurpleCmdRet silcpurple_cmd_quit(
 	GHashTable *ui_info;
 	const char *ui_name = NULL, *ui_website = NULL;
 	char *quit_msg;
-	
+
 	gc = purple_conversation_get_gc(conv);
 
 	if (gc == NULL)
============================================================
--- libpurple/protocols/silc10/util.c	a9b932c2521a8c7a922ca9cfdc6eb41cd0815467
+++ libpurple/protocols/silc10/util.c	acfacc250c29147ad966e5d4986ad5350ab7f555
@@ -635,13 +635,13 @@ char *silcpurple_file2mime(const char *f
 		return strdup("image/gif");
 	else if (!g_ascii_strcasecmp(".tiff", ct))
 		return strdup("image/tiff");
-	
+
 	return NULL;
 }
 
-/* Checks if message has images, and assembles MIME message if it has. 
-   If only one image is present, creates simple MIME image message.  If 
-   there are multiple images and/or text with images multipart MIME 
+/* Checks if message has images, and assembles MIME message if it has.
+   If only one image is present, creates simple MIME image message.  If
+   there are multiple images and/or text with images multipart MIME
    message is created. */
 
 SilcDList silcpurple_image_message(const char *msg, SilcUInt32 *mflags)
@@ -747,7 +747,7 @@ SilcDList silcpurple_image_message(const
 		silc_mime_add_field(mime, "MIME-Version", "1.0");
 		g_snprintf(b, sizeof(b), "b%4X%4X",
 			   (unsigned int)time(NULL),
-			   silc_dlist_count(parts)); 
+			   silc_dlist_count(parts));
 		silc_mime_set_multipart(mime, "mixed", b);
 		silc_dlist_start(parts);
 		while ((p = silc_dlist_get(parts)) != SILC_LIST_END)
============================================================
--- libpurple/protocols/silc10/wb.c	1a28fcd994b008d85562d9dab10000bd106510bc
+++ libpurple/protocols/silc10/wb.c	4685fa59f4a0d910948906f36cd156ab86447264
@@ -30,7 +30,7 @@
   2 bytes	height
   4 bytes	brush color
   2 bytes	brush size
-  n bytes	data 
+  n bytes	data
 
   Data:
 
@@ -253,8 +253,8 @@ static void
 }
 
 static void
-silcpurple_wb_request(SilcClient client, const unsigned char *message, 
-		    SilcUInt32 message_len, SilcClientEntry sender, 
+silcpurple_wb_request(SilcClient client, const unsigned char *message,
+		    SilcUInt32 message_len, SilcClientEntry sender,
 		    SilcChannelEntry channel)
 {
 	char tmp[128];
@@ -409,8 +409,8 @@ void silcpurple_wb_send(PurpleWhiteboard
 	/* Send the message */
 	if (wbs->type == 0) {
 		/* Private message */
-		silc_client_send_private_message(sg->client, sg->conn, 
-						 wbs->u.client, 
+		silc_client_send_private_message(sg->client, sg->conn,
+						 wbs->u.client,
 						 SILC_MESSAGE_FLAG_DATA,
 						 packet->head, len, TRUE);
 	} else if (wbs->type == 1) {
@@ -504,8 +504,8 @@ void silcpurple_wb_clear(PurpleWhiteboar
 	/* Send the message */
 	if (wbs->type == 0) {
 		/* Private message */
-		silc_client_send_private_message(sg->client, sg->conn, 
-						 wbs->u.client, 
+		silc_client_send_private_message(sg->client, sg->conn,
+						 wbs->u.client,
 						 SILC_MESSAGE_FLAG_DATA,
 						 packet->head, len, TRUE);
 	} else if (wbs->type == 1) {
============================================================
--- libpurple/certificate.c	08da1f3ecd79b6e752e0e915e08dce45e0114b39
+++ libpurple/certificate.c	d6096a8924a55019afc7783adf1d339d5ee7639a
@@ -314,7 +314,7 @@ purple_certificate_check_signature_chain
 		uid = purple_certificate_get_unique_id(issuer);
 
 		ret = purple_certificate_get_times(issuer, &activation, &expiration);
-		if (!ret || now < activation || now > expiration) { 
+		if (!ret || now < activation || now > expiration) {
 			if (!ret)
 				purple_debug_error("certificate",
 						"...Failed to get validity times for certificate %s\n"
@@ -413,7 +413,7 @@ byte_arrays_equal(const GByteArray *arra
 	return (array1->len == array2->len) &&
 		(0 == memcmp(array1->data, array2->data, array1->len));
 }
-	
+
 GByteArray *
 purple_certificate_get_fingerprint_sha1(PurpleCertificate *crt)
 {
============================================================
--- finch/gntsound.c	070af872af7fdad26dd93a2f643668828c9299ab
+++ finch/gntsound.c	3d4aef18aa8413deea3a48c86ecbe6997ee63dce
@@ -554,11 +554,11 @@ finch_sound_play_file(const char *filena
 	}
 
 	play = gst_element_factory_make("playbin", "play");
-	
+
 	if (play == NULL) {
 		return;
 	}
-	
+
 	uri = g_strdup_printf("file://%s", filename);
 
 	g_object_set(G_OBJECT(play), "uri", uri,
@@ -688,7 +688,7 @@ file_cb(GntFileSel *w, const char *path,
 
 	gnt_tree_change_text(GNT_TREE(pref_dialog->events), GINT_TO_POINTER(event->id), 1, file);
 	gnt_tree_set_choice(GNT_TREE(pref_dialog->events), GINT_TO_POINTER(event->id), TRUE);
-	
+
 	gnt_widget_destroy(GNT_WIDGET(w));
 }
 
@@ -731,7 +731,7 @@ reset_cb(GntWidget *button, gpointer nul
 reset_cb(GntWidget *button, gpointer null)
 {
 	/* Don't dereference this pointer ! */
-	gpointer key = gnt_tree_get_selection_data(GNT_TREE(pref_dialog->events)); 
+	gpointer key = gnt_tree_get_selection_data(GNT_TREE(pref_dialog->events));
 
 	FinchSoundEvent * event = &sounds[GPOINTER_TO_INT(key)];
 	g_free(event->file);
@@ -881,7 +881,7 @@ prof_add_cb(GntButton *button, GntEntry 
 		gnt_entry_set_text(entry, "");
 		gnt_tree_set_selected(GNT_TREE(pref_dialog->profiles), key);
 		finch_sound_set_active_profile(key);
-	} else 
+	} else
 		reload_pref_window(profile);
 }
 
@@ -982,13 +982,13 @@ finch_sounds_show_all(void)
 	gnt_combo_box_add_data(GNT_COMBO_BOX(cmbox), "nosound", _("No Sound"));
 
 	label = gnt_label_new_with_format(_("Sound Method"), GNT_TEXT_FLAG_BOLD);
-	gnt_box_add_widget(GNT_BOX(box), label); 
+	gnt_box_add_widget(GNT_BOX(box), label);
 	tmpbox = gnt_hbox_new(TRUE);
 	gnt_box_set_fill(GNT_BOX(tmpbox), FALSE);
 	gnt_box_set_pad(GNT_BOX(tmpbox), 0);
 	gnt_box_add_widget(GNT_BOX(tmpbox), gnt_label_new(_("Method: ")));
 	gnt_box_add_widget(GNT_BOX(tmpbox), cmbox);
-	gnt_box_add_widget(GNT_BOX(box), tmpbox); 
+	gnt_box_add_widget(GNT_BOX(box), tmpbox);
 
 	tmpbox = gnt_hbox_new(TRUE);
 	gnt_box_set_pad(GNT_BOX(tmpbox), 0);
@@ -1001,7 +1001,7 @@ finch_sounds_show_all(void)
 	gnt_box_add_widget(GNT_BOX(box), gnt_line_new(FALSE));
 
 	/* Sound options */
-	gnt_box_add_widget(GNT_BOX(box), gnt_label_new_with_format(_("Sound Options"), GNT_TEXT_FLAG_BOLD)); 
+	gnt_box_add_widget(GNT_BOX(box), gnt_label_new_with_format(_("Sound Options"), GNT_TEXT_FLAG_BOLD));
 	pref_dialog->conv_focus = chkbox = gnt_check_box_new(_("Sounds when conversation has focus"));
 	gnt_box_add_widget(GNT_BOX(box), chkbox);
 
@@ -1038,7 +1038,7 @@ finch_sounds_show_all(void)
 	gnt_box_add_widget(GNT_BOX(win), gnt_hline_new());
 
 	/* Sound events */
-	gnt_box_add_widget(GNT_BOX(win), gnt_label_new_with_format(_("Sound Events"), GNT_TEXT_FLAG_BOLD)); 
+	gnt_box_add_widget(GNT_BOX(win), gnt_label_new_with_format(_("Sound Events"), GNT_TEXT_FLAG_BOLD));
 	pref_dialog->events = tree = gnt_tree_new_with_columns(2);
 	gnt_tree_set_column_titles(GNT_TREE(tree), _("Event"), _("File"));
 	gnt_tree_set_show_title(GNT_TREE(tree), TRUE);
============================================================
--- libpurple/protocols/yahoo/yahoo_aliases.c	3316865023276e9f4298cbcd93c9433920cf014d
+++ libpurple/protocols/yahoo/yahoo_aliases.c	6d631818783d2a991c3f3974da861a5f2c6943d8
@@ -151,7 +151,7 @@ yahoo_fetch_aliases_cb(PurpleUtilFetchUr
 						purple_debug_info("yahoo", "Sent updated alias '%s'\n", buddy_alias);
 					}
 				}
-				
+
 				if (f != NULL)
 					ypd = &f->ypd;
 				else {
============================================================
--- finch/gntcertmgr.c	35915dc5c39a8dbc3fda9f1a5f46346e8b46546d
+++ finch/gntcertmgr.c	7b6ab20e249747d6817dc575a2f5a39be8c23406
@@ -193,7 +193,7 @@ info_cert_cb(GntWidget *button, gpointer
 	subject = purple_certificate_get_subject_name(crt);
 
 	secondary = g_strdup_printf(_("Common name: %s\n\nSHA1 fingerprint:\n%s"), subject, fpr_sha1_asc);
-	
+
 	purple_notify_info(NULL,
 			   _("SSL Host Certificate"), primary, secondary);
 
============================================================
--- libpurple/media.c	d6492d3cbe6800246798996e987df68036e3ef0d
+++ libpurple/media.c	31256dbdb3370db7c9d8658746f656f643cd8518
@@ -190,7 +190,7 @@ purple_media_class_init (PurpleMediaClas
 {
 	GObjectClass *gobject_class = (GObjectClass*)klass;
 	parent_class = g_type_class_peek_parent(klass);
-	
+
 	gobject_class->dispose = purple_media_dispose;
 	gobject_class->finalize = purple_media_finalize;
 	gobject_class->set_property = purple_media_set_property;
@@ -416,7 +416,7 @@ purple_media_set_property (GObject *obje
 		case PROP_PRPL_DATA:
 			media->priv->prpl_data = g_value_get_pointer(value);
 			break;
-		default:	
+		default:
 			G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
 			break;
 	}
@@ -427,7 +427,7 @@ purple_media_get_property (GObject *obje
 {
 	PurpleMedia *media;
 	g_return_if_fail(PURPLE_IS_MEDIA(object));
-	
+
 	media = PURPLE_MEDIA(object);
 
 	switch (prop_id) {
@@ -450,8 +450,8 @@ purple_media_get_property (GObject *obje
 		case PROP_PRPL_DATA:
 			g_value_set_pointer(value, media->priv->prpl_data);
 			break;
-		default:	
-			G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);	
+		default:
+			G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
 			break;
 	}
 
@@ -490,7 +490,7 @@ purple_media_get_streams(PurpleMedia *me
 {
 	GList *streams;
 	GList *ret = NULL;
-	
+
 	g_return_val_if_fail(PURPLE_IS_MEDIA(media), NULL);
 
 	streams = media->priv->streams;
@@ -535,7 +535,7 @@ purple_media_insert_stream(PurpleMediaSe
 		const gchar *name, gboolean initiator)
 {
 	PurpleMediaStream *media_stream;
-	
+
 	g_return_val_if_fail(session != NULL, NULL);
 
 	media_stream = g_new0(PurpleMediaStream, 1);
============================================================
--- libpurple/mediamanager.c	e56233d897986775857ad69339fdf09a5cadae93
+++ libpurple/mediamanager.c	69f27683e29c9b05775fdd6ee7a06ee3aeba8bb6
@@ -140,7 +140,7 @@ purple_media_manager_class_init (PurpleM
 {
 	GObjectClass *gobject_class = (GObjectClass*)klass;
 	parent_class = g_type_class_peek_parent(klass);
-	
+
 	gobject_class->finalize = purple_media_manager_finalize;
 
 	purple_media_manager_signals[INIT_MEDIA] = g_signal_new ("init-media",
@@ -928,7 +928,7 @@ purple_media_manager_get_backend_type(Pu
 
 GType
 purple_media_manager_get_backend_type(PurpleMediaManager *manager)
-{	
+{
 #ifdef USE_VV
 	g_return_val_if_fail(PURPLE_IS_MEDIA_MANAGER(manager),
 			PURPLE_MEDIA_CAPS_NONE);
@@ -1070,7 +1070,7 @@ purple_media_element_info_set_property (
 		case PROP_CREATE_CB:
 			priv->create = g_value_get_pointer(value);
 			break;
-		default:	
+		default:
 			G_OBJECT_WARN_INVALID_PROPERTY_ID(
 					object, prop_id, pspec);
 			break;
@@ -1083,7 +1083,7 @@ purple_media_element_info_get_property (
 {
 	PurpleMediaElementInfoPrivate *priv;
 	g_return_if_fail(PURPLE_IS_MEDIA_ELEMENT_INFO(object));
-	
+
 	priv = PURPLE_MEDIA_ELEMENT_INFO_GET_PRIVATE(object);
 
 	switch (prop_id) {
@@ -1099,7 +1099,7 @@ purple_media_element_info_get_property (
 		case PROP_CREATE_CB:
 			g_value_set_pointer(value, priv->create);
 			break;
-		default:	
+		default:
 			G_OBJECT_WARN_INVALID_PROPERTY_ID(
 					object, prop_id, pspec);
 			break;
@@ -1110,7 +1110,7 @@ purple_media_element_info_class_init(Pur
 purple_media_element_info_class_init(PurpleMediaElementInfoClass *klass)
 {
 	GObjectClass *gobject_class = (GObjectClass*)klass;
-	
+
 	gobject_class->finalize = purple_media_element_info_finalize;
 	gobject_class->set_property = purple_media_element_info_set_property;
 	gobject_class->get_property = purple_media_element_info_get_property;
============================================================
--- pidgin/gtkmedia.c	2b0276af644a5b022d43d9964d20d8e64feac136
+++ pidgin/gtkmedia.c	e742870673c1c68643fc5fe719de7106d2f69588
@@ -373,7 +373,7 @@ pidgin_media_disconnect_levels(PurpleMed
 	PurpleMediaManager *manager = purple_media_get_manager(media);
 	GstElement *element = purple_media_manager_get_pipeline(manager);
 	gulong handler_id = g_signal_handler_find(G_OBJECT(gst_pipeline_get_bus(GST_PIPELINE(element))),
-						  G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, 0, 0, 
+						  G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, 0, 0,
 						  NULL, G_CALLBACK(level_message_cb), gtkmedia);
 	if (handler_id)
 		g_signal_handler_disconnect(G_OBJECT(gst_pipeline_get_bus(GST_PIPELINE(element))),
@@ -638,7 +638,7 @@ pidgin_media_ready_cb(PurpleMedia *media
 	if (gtkmedia->priv->recv_widget == NULL
 			&& type & (PURPLE_MEDIA_RECV_VIDEO |
 			PURPLE_MEDIA_RECV_AUDIO)) {
-		recv_widget = gtk_vbox_new(FALSE, PIDGIN_HIG_BOX_SPACE);	
+		recv_widget = gtk_vbox_new(FALSE, PIDGIN_HIG_BOX_SPACE);
 		gtk_box_pack_start(GTK_BOX(gtkmedia->priv->display),
 				recv_widget, TRUE, TRUE, 0);
 		gtk_widget_show(recv_widget);
@@ -794,7 +794,7 @@ pidgin_media_ready_cb(PurpleMedia *media
 		gtk_window_set_icon(GTK_WINDOW(gtkmedia), icon);
 		g_object_unref(icon);
 	}
-	
+
 	gtk_widget_show(gtkmedia->priv->display);
 }
 
@@ -918,8 +918,8 @@ pidgin_media_new_cb(PurpleMediaManager *
 	PidginMedia *gtkmedia = PIDGIN_MEDIA(
 			pidgin_media_new(media, screenname));
 	PurpleBuddy *buddy = purple_find_buddy(account, screenname);
-	const gchar *alias = buddy ? 
-			purple_buddy_get_contact_alias(buddy) : screenname; 
+	const gchar *alias = buddy ?
+			purple_buddy_get_contact_alias(buddy) : screenname;
 	gtk_window_set_title(GTK_WINDOW(gtkmedia), alias);
 
 	if (purple_media_is_initiator(media, NULL, NULL) == TRUE)
@@ -1076,7 +1076,7 @@ pidgin_medias_init(void)
 	g_signal_connect(G_OBJECT(manager), "init-media",
 			 G_CALLBACK(pidgin_media_new_cb), NULL);
 
-	purple_media_manager_set_ui_caps(manager, 
+	purple_media_manager_set_ui_caps(manager,
 			PURPLE_MEDIA_CAPS_AUDIO |
 			PURPLE_MEDIA_CAPS_AUDIO_SINGLE_DIRECTION |
 			PURPLE_MEDIA_CAPS_VIDEO |
============================================================
--- pidgin/plugins/gevolution/eds-utils.c	28c3a7c4b11a9d933636a472db82acc6b6d5ab53
+++ pidgin/plugins/gevolution/eds-utils.c	0fd8527e1be903e54bc592277ac26025a2e43392
@@ -113,7 +113,7 @@ gevo_addrbooks_model_populate(GtkTreeMod
 	g_object_unref(addressbooks);
 }
 
-static EContact * 
+static EContact *
 gevo_run_query_in_uri(const gchar *uri, EBookQuery *query)
 {
 	EBook *book;
@@ -169,7 +169,7 @@ gevo_run_query_in_uri(const gchar *uri, 
  *              so callers must e_book_query_ref() it in advance (to obtain a
  *              second reference) if they want to reuse @a query.
  */
-EContact * 
+EContact *
 gevo_search_buddy_in_contacts(PurpleBuddy *buddy, EBookQuery *query)
 {
 	ESourceList *addressbooks;
============================================================
--- pidgin/minidialog.c	2e29d56ddb428c86d1e4ee9854fd56b0925b948c
+++ pidgin/minidialog.c	d14d7458239921be4fa9baf33df2af4adcab0a79
@@ -383,7 +383,7 @@ pidgin_mini_dialog_class_init(PidginMini
 		G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB |
 		G_PARAM_READWRITE);
 	g_object_class_install_property (object_class, PROP_ICON_NAME, param_spec);
-	
+
 	param_spec = g_param_spec_object("custom-icon", "custom-icon",
 		"Pixbuf to use as the dialog's icon",
 		GDK_TYPE_PIXBUF,
============================================================
--- pidgin/pidgintooltip.c	6cbb6497a0392885150807a90221f1d7f9b925c4
+++ pidgin/pidgintooltip.c	6e9d24b4388937ae9d386d8ab322032e674fcfd2
@@ -138,7 +138,7 @@ setup_tooltip_window_position(gpointer d
 	GdkScreen *screen = NULL;
 	GdkRectangle mon_size;
 	GtkWidget *tipwindow = pidgin_tooltip.tipwindow;
-	
+
 	gdk_display_get_pointer(gdk_display_get_default(), &screen, &x, &y, NULL);
 	mon_num = gdk_screen_get_monitor_at_point(screen, x, y);
 	gdk_screen_get_monitor_geometry(screen, mon_num, &mon_size);
============================================================
--- libpurple/protocols/jabber/jingle/jingle.c	0beb3712f08617bca74947582a4919825ef90ba1
+++ libpurple/protocols/jabber/jingle/jingle.c	95eada7eca29575b932dc2bd4d70b21c140aa42b
@@ -170,7 +170,7 @@ jingle_handle_description_info(JingleSes
 	jabber_iq_send(jingle_session_create_ack(session, jingle));
 
 	jingle_session_accept_session(session);
-	
+
 	for (; content; content = xmlnode_get_next_twin(content)) {
 		const gchar *name = xmlnode_get_attrib(content, "name");
 		const gchar *creator = xmlnode_get_attrib(content, "creator");
@@ -201,7 +201,7 @@ jingle_handle_session_accept(JingleSessi
 	jabber_iq_send(jingle_session_create_ack(session, jingle));
 
 	jingle_session_accept_session(session);
-	
+
 	for (; content; content = xmlnode_get_next_twin(content)) {
 		const gchar *name = xmlnode_get_attrib(content, "name");
 		const gchar *creator = xmlnode_get_attrib(content, "creator");
@@ -263,7 +263,7 @@ jingle_handle_transport_accept(JingleSes
 	xmlnode *content = xmlnode_get_child(jingle, "content");
 
 	jabber_iq_send(jingle_session_create_ack(session, jingle));
-	
+
 	for (; content; content = xmlnode_get_next_twin(content)) {
 		const gchar *name = xmlnode_get_attrib(content, "name");
 		const gchar *creator = xmlnode_get_attrib(content, "creator");
@@ -282,7 +282,7 @@ jingle_handle_transport_info(JingleSessi
 	for (; content; content = xmlnode_get_next_twin(content)) {
 		const gchar *name = xmlnode_get_attrib(content, "name");
 		const gchar *creator = xmlnode_get_attrib(content, "creator");
-		JingleContent *parsed_content = 
+		JingleContent *parsed_content =
 				jingle_session_find_content(session, name, creator);
 		if (parsed_content == NULL) {
 			purple_debug_error("jingle", "Error parsing content\n");
@@ -301,7 +301,7 @@ jingle_handle_transport_reject(JingleSes
 	xmlnode *content = xmlnode_get_child(jingle, "content");
 
 	jabber_iq_send(jingle_session_create_ack(session, jingle));
-	
+
 	for (; content; content = xmlnode_get_next_twin(content)) {
 		const gchar *name = xmlnode_get_attrib(content, "name");
 		const gchar *creator = xmlnode_get_attrib(content, "creator");
@@ -447,13 +447,13 @@ jingle_create_relay_info(const gchar *ip
 {
 	GValue value;
 	GstStructure *turn_setup = gst_structure_new("relay-info",
-		"ip", G_TYPE_STRING, ip, 
+		"ip", G_TYPE_STRING, ip,
 		"port", G_TYPE_UINT, port,
 		"username", G_TYPE_STRING, username,
 		"password", G_TYPE_STRING, password,
 		"relay-type", G_TYPE_STRING, relay_type,
 		NULL);
-	purple_debug_info("jabber", "created gst_structure %" GST_PTR_FORMAT "\n", 
+	purple_debug_info("jabber", "created gst_structure %" GST_PTR_FORMAT "\n",
 		turn_setup);
 	if (turn_setup) {
 		memset(&value, 0, sizeof(GValue));
@@ -477,18 +477,18 @@ jingle_get_params(JabberStream *js, cons
 		(relay_ip ? 3 : 2) : (relay_ip ? 1 : 0);
 	GParameter *params = NULL;
 	int next_index = 0;
-	
+
 	if (num_params > 0) {
 		params = g_new0(GParameter, num_params);
 
 		if (has_account_stun) {
-			purple_debug_info("jabber", 
+			purple_debug_info("jabber",
 				"setting param stun-ip for stream using Google auto-config: %s\n",
 				js->stun_ip);
 			params[next_index].name = "stun-ip";
 			g_value_init(&params[next_index].value, G_TYPE_STRING);
 			g_value_set_string(&params[next_index].value, js->stun_ip);
-			purple_debug_info("jabber", 
+			purple_debug_info("jabber",
 				"setting param stun-port for stream using Google auto-config: %d\n",
 				js->stun_port);
 			next_index++;
@@ -497,22 +497,22 @@ jingle_get_params(JabberStream *js, cons
 			g_value_set_uint(&params[next_index].value, js->stun_port);
 			next_index++;
 		}
-	
+
 		if (relay_ip) {
 			GValueArray *relay_info = g_value_array_new(0);
 
 			if (relay_udp) {
-				relay_info = 
+				relay_info =
 					jingle_create_relay_info(relay_ip, relay_udp, relay_username,
 						relay_password, "udp", relay_info);
 			}
 			if (relay_tcp) {
-				relay_info = 
+				relay_info =
 					jingle_create_relay_info(relay_ip, relay_tcp, relay_username,
 						relay_password, "tcp", relay_info);
 			}
 			if (relay_ssltcp) {
-				relay_info = 
+				relay_info =
 					jingle_create_relay_info(relay_ip, relay_ssltcp, relay_username,
 						relay_password, "tls", relay_info);
 			}
============================================================
--- finch/gntmedia.c	2eaeee3397742fd5cad2f0940034bee7bcb192e8
+++ finch/gntmedia.c	77eb0fad5f54dd8b3c85c5f89fbc3bfed99bd71c
@@ -252,7 +252,7 @@ finch_media_state_changed_cb(PurpleMedia
 	} else if (state == PURPLE_MEDIA_STATE_CONNECTED) {
 		finch_media_connected_cb(media, gntmedia);
 	} else if (state == PURPLE_MEDIA_STATE_NEW &&
-			sid != NULL && name != NULL && 
+			sid != NULL && name != NULL &&
 			purple_media_is_initiator(media, sid, name) == FALSE) {
 		PurpleAccount *account;
 		PurpleBuddy *buddy;
@@ -360,7 +360,7 @@ finch_media_get_property (GObject *objec
 			g_value_set_object(value, media->priv->media);
 			break;
 		default:
-			G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);	
+			G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
 			break;
 	}
 }
@@ -480,7 +480,7 @@ void finch_media_manager_init(void)
 			PURPLE_CMD_FLAG_IM, NULL,
 			call_cmd_cb, _("call: Make an audio call."), NULL);
 
-	purple_media_manager_set_ui_caps(manager, 
+	purple_media_manager_set_ui_caps(manager,
 			PURPLE_MEDIA_CAPS_AUDIO |
 			PURPLE_MEDIA_CAPS_AUDIO_SINGLE_DIRECTION);
 
============================================================
--- pidgin/plugins/sendbutton.c	2b824c7a380aeab08a5c648d5ac6c31ff3e3dcf3
+++ pidgin/plugins/sendbutton.c	6bc2aaf5444728d2a4e849bc0688ab027f90042b
@@ -74,7 +74,7 @@ create_send_button_pidgin(PidginConversa
 		                  GINT_TO_POINTER(signal_id));
 		input_buffer_changed(buf, send_button);
 	}
- 
+
 	g_object_set_data(G_OBJECT(gtkconv->lower_hbox), "send_button",
 	                  send_button);
 }
@@ -128,7 +128,7 @@ plugin_load(PurplePlugin *plugin)
 	 */
 
 	while (convs) {
-		
+
 		PurpleConversation *conv = (PurpleConversation *)convs->data;
 
 		/* Setup Send button */
============================================================
--- libpurple/protocols/jabber/data.c	e964bbee9f5c902eaed77496f915daa1b8f4f611
+++ libpurple/protocols/jabber/data.c	bc32e57aede785e5d98120f4f1a6fa09e3f0ae0e
@@ -283,7 +283,7 @@ jabber_data_request_cb(JabberStream *js,
 	gchar *alt = request_data->alt;
 	gboolean ephemeral = request_data->ephemeral;
 	JabberDataRequestCallback *cb = request_data->cb;
-	
+
 	xmlnode *data_element = xmlnode_get_child(packet, "data");
 	xmlnode *item_not_found = xmlnode_get_child(packet, "item-not-found");
 
@@ -308,7 +308,7 @@ void
 }
 
 void
-jabber_data_request(JabberStream *js, const gchar *cid, const gchar *who, 
+jabber_data_request(JabberStream *js, const gchar *cid, const gchar *who,
     gchar *alt, gboolean ephemeral, JabberDataRequestCallback cb,
     gpointer userdata)
 {
@@ -328,7 +328,7 @@ jabber_data_request(JabberStream *js, co
 	data->alt = alt;
 	data->ephemeral = ephemeral;
 	data->cb = cb;
-	
+
 	xmlnode_set_attrib(request->node, "to", who);
 	jabber_iq_set_callback(request, jabber_data_request_cb, data);
 	xmlnode_insert_child(request->node, data_request);
@@ -398,7 +398,7 @@ jabber_data_associate_remote(JabberStrea
 
 	purple_debug_info("jabber", "associating remote BoB object with cid = %s\n",
 		cid);
-	
+
 	g_hash_table_insert(remote_data_by_cid, cid, data);
 }
 
============================================================
--- libpurple/theme-manager.c	187b4a55f08a2bb2fb4ef5190c427424e7fe7aa8
+++ libpurple/theme-manager.c	3ed50f8350fc7954219b5f7ffaeb85a03e4d1784
@@ -295,7 +295,7 @@ purple_theme_manager_load_theme(const gc
 PurpleTheme *
 purple_theme_manager_load_theme(const gchar *theme_dir, const gchar *type)
 {
-	PurpleThemeLoader *loader;	
+	PurpleThemeLoader *loader;
 
 	g_return_val_if_fail(theme_dir != NULL && type != NULL, NULL);
 
============================================================
--- pidgin/gtkblist-theme-loader.c	20a27aff8a615c8e09a6a788d09062c374458654
+++ pidgin/gtkblist-theme-loader.c	998de9eccacaf35c081669f51313bbec33ee37f2
@@ -136,7 +136,7 @@ pidgin_blist_loader_build(const gchar *d
 	if (success) {
 		if ((success = (sub_node = xmlnode_get_child(root_node, "blist")) != NULL))
 			bgcolor = parse_color(sub_node, "color");
-		else 
+		else
 			purple_debug_warning("gtkblist-theme-loader", "Missing or problem with tags: <blist>.\n");
 	}
 
============================================================
--- libpurple/protocols/qq/qq_crypt.c	3425e7f0e445c61e986da29f1bcf85ec6efbbd30
+++ libpurple/protocols/qq/qq_crypt.c	5e6cdfa2d04902e9fba95d927ee630fd4412c4e7
@@ -24,7 +24,7 @@
  *
  * QQ encryption algorithm
  * Convert from ASM code provided by PerlOICQ
- * 
+ *
  * Puzzlebird, Nov-Dec 2002
  */
 
@@ -34,8 +34,8 @@ KEY: 128 bits of key  in k[0] - k[3].
 OUT: 64  bits of data in w[0] - w[1].
 KEY: 128 bits of key  in k[0] - k[3].
 
-delta is chosen to be the real part of 
-the golden ratio: Sqrt(5/4) - 1/2 ~ 0.618034 multiplied by 2^32. 
+delta is chosen to be the real part of
+the golden ratio: Sqrt(5/4) - 1/2 ~ 0.618034 multiplied by 2^32.
 
 0x61C88647 is what we can track on the ASM codes.!!
 */
@@ -53,7 +53,7 @@ void show_binary(char *psztitle, const g
 	for (i = 0; i < bytes; i += 16) {
 		/* length label */
 		printf("%07x: ", i);
-		
+
 		/* dump hex value */
 		for (j = 0; j < 16; j++) {
 			if (j == 8) {
@@ -64,10 +64,10 @@ void show_binary(char *psztitle, const g
 			else
 				printf("   ");
 		}
-		
+
 		printf("  ");
-		
-		
+
+
 		/* dump ascii value */
 		for (j = 0; j < 16 && (i + j) < bytes; j++) {
 			ch = buffer[i + j] & 127;
@@ -87,21 +87,21 @@ void show_binary(char *psztitle, const g
 #endif
 
 /********************************************************************
- * encryption 
+ * encryption
  *******************************************************************/
 
 /* Tiny Encryption Algorithm (TEA) */
 static inline void qq_encipher(guint32 *const v, const guint32 *const k, guint32 *const w)
 {
 	register guint32
-		y = g_ntohl(v[0]), 
-		 z = g_ntohl(v[1]), 
-		 a = g_ntohl(k[0]), 
-		 b = g_ntohl(k[1]), 
-		 c = g_ntohl(k[2]), 
-		 d = g_ntohl(k[3]), 
-		 n = 0x10, 
-		 sum = 0, 
+		y = g_ntohl(v[0]),
+		 z = g_ntohl(v[1]),
+		 a = g_ntohl(k[0]),
+		 b = g_ntohl(k[1]),
+		 c = g_ntohl(k[2]),
+		 d = g_ntohl(k[3]),
+		 n = 0x10,
+		 sum = 0,
 		 delta = 0x9E3779B9;	/*  0x9E3779B9 - 0x100000000 = -0x61C88647 */
 
 	while (n-- > 0) {
@@ -117,8 +117,8 @@ static inline void qq_encipher(guint32 *
 /* it can be the real random seed function */
 /* override with number, convenient for debug */
 #ifdef DEBUG
-static gint crypt_rand(void) {	
-	return 0xdead; 
+static gint crypt_rand(void) {
+	return 0xdead;
 }
 #else
 #include <stdlib.h>
@@ -126,7 +126,7 @@ static gint crypt_rand(void) {	
 #endif
 
 /* 64-bit blocks and some kind of feedback mode of operation */
-static inline void encrypt_out(guint8 *crypted, const gint crypted_len, const guint8 *key) 
+static inline void encrypt_out(guint8 *crypted, const gint crypted_len, const guint8 *key)
 {
 	/* ships in encipher */
 	guint32 plain32[2];
@@ -134,34 +134,34 @@ static inline void encrypt_out(guint8 *c
 	guint32 key32[4];
 	guint32 crypted32[2];
 	guint32 c32_prev[2];
-	
+
 	guint8 *crypted_ptr;
 	gint count64;
-	
+
 	/* prepare at first */
 	crypted_ptr = crypted;
-	
+
 	memcpy(crypted32, crypted_ptr, sizeof(crypted32));
 	c32_prev[0] = crypted32[0]; c32_prev[1] = crypted32[1];
-	
+
 	p32_prev[0] = 0; p32_prev[1] = 0;
 	plain32[0] = crypted32[0] ^ p32_prev[0]; plain32[1] = crypted32[1] ^ p32_prev[1];
-	
+
 	g_memmove(key32, key, 16);
 	count64 = crypted_len / 8;
 	while (count64-- > 0){
 		/* encrypt it */
 		qq_encipher(plain32, key32, crypted32);
-		
+
 		crypted32[0] ^= p32_prev[0]; crypted32[1] ^= p32_prev[1];
-		
+
 		/* store curr 64 bits crypted */
 		g_memmove(crypted_ptr, crypted32, sizeof(crypted32));
-		
+
 		/* set prev */
 		p32_prev[0] = plain32[0]; p32_prev[1] = plain32[1];
 		c32_prev[0] = crypted32[0]; c32_prev[1] = crypted32[1];
-		
+
 		/* set next 64 bits want to crypt*/
 		if (count64 > 0) {
 			crypted_ptr += 8;
@@ -181,7 +181,7 @@ gint qq_encrypt(guint8* crypted, const g
 {
 	guint8 *crypted_ptr = crypted;		/* current position of dest */
 	gint pos, padding;
-	
+
 	padding = (plain_len + 10) % 8;
 	if (padding) {
 		padding = 8 - padding;
@@ -223,20 +223,20 @@ gint qq_encrypt(guint8* crypted, const g
 	return pos;
 }
 
-/******************************************************************** 
- * decryption 
+/********************************************************************
+ * decryption
  ********************************************************************/
 
 static inline void qq_decipher(guint32 *const v, const guint32 *const k, guint32 *const w)
 {
 	register guint32
-		y = g_ntohl(v[0]), 
-		z = g_ntohl(v[1]), 
-		a = g_ntohl(k[0]), 
-		b = g_ntohl(k[1]), 
-		c = g_ntohl(k[2]), 
-		d = g_ntohl(k[3]), 
-		n = 0x10, 
+		y = g_ntohl(v[0]),
+		z = g_ntohl(v[1]),
+		a = g_ntohl(k[0]),
+		b = g_ntohl(k[1]),
+		c = g_ntohl(k[2]),
+		d = g_ntohl(k[3]),
+		n = 0x10,
 		sum = 0xE3779B90,	/* why this ? must be related with n value */
 		delta = 0x9E3779B9;
 
@@ -251,7 +251,7 @@ static inline void qq_decipher(guint32 *
 	w[1] = g_htonl(z);
 }
 
-static inline gint decrypt_out(guint8 *dest, gint crypted_len, const guint8* const key) 
+static inline gint decrypt_out(guint8 *dest, gint crypted_len, const guint8* const key)
 {
 	gint plain_len;
 	guint32 key32[4];
@@ -280,7 +280,7 @@ static inline gint decrypt_out(guint8 *d
 	if( plain_len < 0 )	{
 		return -2;
 	}
-	
+
 	count64 = crypted_len / 8;
 	while (--count64 > 0){
 		c32_prev[0] = crypted32[0]; c32_prev[1] = crypted32[1];
@@ -290,7 +290,7 @@ static inline gint decrypt_out(guint8 *d
 		p32_prev[0] ^= crypted32[0]; p32_prev[1] ^= crypted32[1];
 
 		qq_decipher(p32_prev, key32, p32_prev);
-		
+
 		plain32[0] = p32_prev[0] ^ c32_prev[0]; plain32[1] = p32_prev[1] ^ c32_prev[1];
 		memcpy(crypted_ptr, plain32, sizeof(plain32));
 	}
@@ -306,7 +306,7 @@ gint qq_decrypt(guint8 *plain, const gui
 	gint pos;
 
 	/* at least 16 bytes and %8 == 0 */
-	if ((crypted_len % 8) || (crypted_len < 16)) { 
+	if ((crypted_len % 8) || (crypted_len < 16)) {
 		return -1;
 	}
 
============================================================
--- libpurple/protocols/jabber/jingle/content.c	5b8f6e8d2d36e2cbb51e02a998981538a9110b65
+++ libpurple/protocols/jabber/jingle/content.c	87e8caee3cac60e78ebbccc587c8addf469cd2dd
@@ -93,7 +93,7 @@ jingle_content_class_init (JingleContent
 {
 	GObjectClass *gobject_class = (GObjectClass*)klass;
 	parent_class = g_type_class_peek_parent(klass);
-	
+
 	gobject_class->finalize = jingle_content_finalize;
 	gobject_class->set_property = jingle_content_set_property;
 	gobject_class->get_property = jingle_content_get_property;
@@ -164,7 +164,7 @@ jingle_content_finalize (GObject *conten
 {
 	JingleContentPrivate *priv = JINGLE_CONTENT_GET_PRIVATE(content);
 	purple_debug_info("jingle","jingle_content_finalize\n");
-	
+
 	g_free(priv->description_type);
 	g_free(priv->creator);
 	g_free(priv->disposition);
@@ -215,7 +215,7 @@ jingle_content_set_property (GObject *ob
 				g_object_unref(content->priv->pending_transport);
 			content->priv->pending_transport = g_value_get_object(value);
 			break;
-		default:	
+		default:
 			G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
 			break;
 	}
@@ -226,7 +226,7 @@ jingle_content_get_property (GObject *ob
 {
 	JingleContent *content;
 	g_return_if_fail(JINGLE_IS_CONTENT(object));
-	
+
 	content = JINGLE_CONTENT(object);
 
 	switch (prop_id) {
@@ -251,8 +251,8 @@ jingle_content_get_property (GObject *ob
 		case PROP_PENDING_TRANSPORT:
 			g_value_set_object(value, content->priv->pending_transport);
 			break;
-		default:	
-			G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);	
+		default:
+			G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
 			break;
 	}
 }
@@ -262,8 +262,8 @@ jingle_content_create(const gchar *type,
 		const gchar *disposition, const gchar *name,
 		const gchar *senders, JingleTransport *transport)
 {
-	
 
+
 	JingleContent *content = g_object_new(jingle_get_type(type),
 			"creator", creator,
 			"disposition", disposition != NULL ? disposition : "session",
============================================================
--- libpurple/protocols/jabber/jingle/session.c	0b6b01e0b1a4ceea7b447e8d19a85183223b707c
+++ libpurple/protocols/jabber/jingle/session.c	c1b4c4eb938cf774840df8d92780271917d3c2a5
@@ -93,7 +93,7 @@ jingle_session_class_init (JingleSession
 {
 	GObjectClass *gobject_class = (GObjectClass*)klass;
 	parent_class = g_type_class_peek_parent(klass);
-	
+
 	gobject_class->finalize = jingle_session_finalize;
 	gobject_class->set_property = jingle_session_set_property;
 	gobject_class->get_property = jingle_session_get_property;
@@ -221,7 +221,7 @@ jingle_session_set_property (GObject *ob
 		case PROP_PENDING_CONTENTS:
 			session->priv->pending_contents = g_value_get_pointer(value);
 			break;
-		default:	
+		default:
 			G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
 			break;
 	}
@@ -232,7 +232,7 @@ jingle_session_get_property (GObject *ob
 {
 	JingleSession *session;
 	g_return_if_fail(JINGLE_IS_SESSION(object));
-	
+
 	session = JINGLE_SESSION(object);
 
 	switch (prop_id) {
@@ -260,8 +260,8 @@ jingle_session_get_property (GObject *ob
 		case PROP_PENDING_CONTENTS:
 			g_value_set_pointer(value, session->priv->pending_contents);
 			break;
-		default:	
-			G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);	
+		default:
+			G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
 			break;
 	}
 }
@@ -395,7 +395,7 @@ jingle_session_find_by_jid(JabberStream 
 {
 	return js->sessions != NULL ?
 			g_hash_table_find(js->sessions,
-			find_by_jid_ghr, (gpointer)jid) : NULL; 
+			find_by_jid_ghr, (gpointer)jid) : NULL;
 }
 
 static xmlnode *
@@ -427,7 +427,7 @@ jingle_add_jingle_packet(JingleSession *
 	g_free(remote_jid);
 
 	xmlnode_set_attrib(jingle, "sid", jingle_session_get_sid(session));
-	
+
 	return jingle;
 }
 
============================================================
--- libpurple/protocols/jabber/jingle/transport.c	645f1359b0c86dbd2c147e835873790d77d73877
+++ libpurple/protocols/jabber/jingle/transport.c	f5a7dcfe79816fb5161761eaec5c76dee3604270
@@ -111,7 +111,7 @@ jingle_transport_set_property (GObject *
 	g_return_if_fail(JINGLE_IS_TRANSPORT(object));
 
 	switch (prop_id) {
-		default:	
+		default:
 			G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
 			break;
 	}
@@ -123,8 +123,8 @@ jingle_transport_get_property (GObject *
 	g_return_if_fail(JINGLE_IS_TRANSPORT(object));
 
 	switch (prop_id) {
-		default:	
-			G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);	
+		default:
+			G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
 			break;
 	}
 }
============================================================
--- libpurple/protocols/jabber/jingle/rawudp.c	0c3a718bf87bd5da1a977166ea844cef83e9e477
+++ libpurple/protocols/jabber/jingle/rawudp.c	89032bac19cf6b7ee32fd0248f1241b62ba8dc66
@@ -187,7 +187,7 @@ jingle_rawudp_set_property (GObject *obj
 			rawudp->priv->remote_candidates =
 					g_value_get_pointer(value);
 			break;
-		default:	
+		default:
 			G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
 			break;
 	}
@@ -198,7 +198,7 @@ jingle_rawudp_get_property (GObject *obj
 {
 	JingleRawUdp *rawudp;
 	g_return_if_fail(JINGLE_IS_RAWUDP(object));
-	
+
 	rawudp = JINGLE_RAWUDP(object);
 
 	switch (prop_id) {
@@ -208,8 +208,8 @@ jingle_rawudp_get_property (GObject *obj
 		case PROP_REMOTE_CANDIDATES:
 			g_value_set_pointer(value, rawudp->priv->remote_candidates);
 			break;
-		default:	
-			G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);	
+		default:
+			G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
 			break;
 	}
 }
============================================================
--- libpurple/protocols/jabber/jingle/rtp.c	76ff2c933d4ad901000e27bd85bdd9817154bf29
+++ libpurple/protocols/jabber/jingle/rtp.c	82797d1d6d25e5b34f9668847288b64596d0e91e
@@ -160,7 +160,7 @@ jingle_rtp_set_property (GObject *object
 			g_free(rtp->priv->ssrc);
 			rtp->priv->ssrc = g_value_dup_string(value);
 			break;
-		default:	
+		default:
 			G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
 			break;
 	}
@@ -171,7 +171,7 @@ jingle_rtp_get_property (GObject *object
 {
 	JingleRtp *rtp;
 	g_return_if_fail(JINGLE_IS_RTP(object));
-	
+
 	rtp = JINGLE_RTP(object);
 
 	switch (prop_id) {
@@ -181,8 +181,8 @@ jingle_rtp_get_property (GObject *object
 		case PROP_SSRC:
 			g_value_set_string(value, rtp->priv->ssrc);
 			break;
-		default:	
-			G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);	
+		default:
+			G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
 			break;
 	}
 }
@@ -251,7 +251,7 @@ jingle_rtp_candidate_to_iceudp(JingleSes
 	gchar *password = purple_media_candidate_get_password(candidate);
 	PurpleMediaCandidateType type =
 			purple_media_candidate_get_candidate_type(candidate);
-	
+
 	JingleIceUdpCandidate *iceudp_candidate = jingle_iceudp_candidate_new(
 			purple_media_candidate_get_component_id(candidate),
 			purple_media_candidate_get_foundation(candidate),
@@ -531,7 +531,7 @@ jingle_rtp_create_media(JingleContent *c
 	gchar *remote_jid = jingle_session_get_remote_jid(session);
 
 	PurpleMedia *media = purple_media_manager_create_media(
-			purple_media_manager_get(), 
+			purple_media_manager_get(),
 			purple_connection_get_account(js->gc),
 			"fsrtpconference", remote_jid,
 			jingle_session_is_initiator(session));
@@ -610,7 +610,7 @@ jingle_rtp_init_media(JingleContent *con
 		type = is_audio == TRUE ? PURPLE_MEDIA_RECV_AUDIO
 				: PURPLE_MEDIA_RECV_VIDEO;
 
-	params = 
+	params =
 		jingle_get_params(jingle_session_get_js(session), NULL, 0, 0, 0,
 			NULL, NULL, &num_params);
 
@@ -659,8 +659,8 @@ jingle_rtp_parse_codecs(xmlnode *descrip
 		id = xmlnode_get_attrib(codec_element, "id");
 		clock_rate = xmlnode_get_attrib(codec_element, "clockrate");
 
-		codec = purple_media_codec_new(atoi(id), encoding_name, 
-				     type, 
+		codec = purple_media_codec_new(atoi(id), encoding_name,
+				     type,
 				     clock_rate ? atoi(clock_rate) : 0);
 
 		for (param = xmlnode_get_child(codec_element, "parameter");
@@ -702,7 +702,7 @@ jingle_rtp_add_payloads(xmlnode *descrip
 		gchar *id, *name, *clockrate, *channels;
 		gchar *codec_str;
 		xmlnode *payload = xmlnode_new_child(description, "payload-type");
-		
+
 		id = g_strdup_printf("%d",
 				purple_media_codec_get_id(codec));
 		name = purple_media_codec_get_encoding_name(codec);
@@ -897,7 +897,7 @@ gboolean
 }
 
 gboolean
-jingle_rtp_initiate_media(JabberStream *js, const gchar *who, 
+jingle_rtp_initiate_media(JabberStream *js, const gchar *who,
 		      PurpleMediaSessionType type)
 {
 	/* create content negotiation */
@@ -907,7 +907,7 @@ jingle_rtp_initiate_media(JabberStream *
 	JabberBuddy *jb;
 	JabberBuddyResource *jbr;
 	const gchar *transport_type;
-	
+
 	gchar *resource = NULL, *me = NULL, *sid = NULL;
 
 	/* construct JID to send to */
============================================================
--- libpurple/protocols/jabber/jingle/iceudp.c	5a0de467337aac8886de2910b72a0ebfff0426bf
+++ libpurple/protocols/jabber/jingle/iceudp.c	342d9053ce0f4e60537a2baef51ab5c5a89444cc
@@ -215,7 +215,7 @@ jingle_iceudp_set_property (GObject *obj
 			iceudp->priv->remote_candidates =
 					g_value_get_pointer(value);
 			break;
-		default:	
+		default:
 			G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
 			break;
 	}
@@ -226,7 +226,7 @@ jingle_iceudp_get_property (GObject *obj
 {
 	JingleIceUdp *iceudp;
 	g_return_if_fail(JINGLE_IS_ICEUDP(object));
-	
+
 	iceudp = JINGLE_ICEUDP(object);
 
 	switch (prop_id) {
@@ -236,8 +236,8 @@ jingle_iceudp_get_property (GObject *obj
 		case PROP_REMOTE_CANDIDATES:
 			g_value_set_pointer(value, iceudp->priv->remote_candidates);
 			break;
-		default:	
-			G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);	
+		default:
+			G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
 			break;
 	}
 }
============================================================
--- finch/libgnt/gntprogressbar.c	9a456a3eacaba063425899b910e8f7e0234dc411
+++ finch/libgnt/gntprogressbar.c	c3233b30215b324e352db5a619db6d10b8fca8e6
@@ -168,7 +168,7 @@ gnt_progress_bar_get_type (void)
 			0,                            /* n_preallocs */
 			gnt_progress_bar_init,        /* instance_init */
 			NULL                          /* value_table */
-		}; 
+		};
 
 		type = g_type_register_static (GNT_TYPE_WIDGET, "GntProgressBar", &info, 0);
 	}
============================================================
--- pidgin/plugins/vvconfig.c	15234500a592a78e85a7acd074641eaa8eaac2c8
+++ pidgin/plugins/vvconfig.c	ab08b25dfaefbd4213c2ff227fb2cba527f64148
@@ -124,7 +124,7 @@ get_element_devices(const gchar *element
 			ret = g_list_reverse(ret);
 			return ret;
 		}
-			
+
 		for (n=0; n < array->n_values; ++n) {
 			GValue *device;
 			const gchar *name;
@@ -152,7 +152,7 @@ get_element_devices(const gchar *element
 		}
 	}
 	gst_object_unref(element);
-	
+
 	ret = g_list_prepend(ret, NULL);
 	ret = g_list_reverse(ret);
 
@@ -527,12 +527,12 @@ show_config(PurplePluginAction *action)
 		GtkWidget *hbox = gtk_hbox_new(FALSE, PIDGIN_HIG_BORDER);
 		GtkWidget *config_frame = get_plugin_config_frame(NULL);
 		GtkWidget *close = gtk_button_new_from_stock(GTK_STOCK_CLOSE);
-		
+
 		gtk_container_add(GTK_CONTAINER(vbox), config_frame);
 		gtk_container_add(GTK_CONTAINER(vbox), hbox);
 		window = pidgin_create_window(_("Voice/Video Settings"),
 			PIDGIN_HIG_BORDER, NULL, TRUE);
-		g_signal_connect(G_OBJECT(window), "destroy", 
+		g_signal_connect(G_OBJECT(window), "destroy",
 			G_CALLBACK(config_destroy), NULL);
 		g_signal_connect(G_OBJECT(close), "clicked",
 		    G_CALLBACK(config_close), NULL);
============================================================
--- libpurple/media/candidate.c	31c92c04c4f22d5038dd4f67c4ffc4583b2f13e4
+++ libpurple/media/candidate.c	ebf8cbfcfaf8b8f89b5c1e5476aa392c9fe98960
@@ -163,7 +163,7 @@ purple_media_candidate_set_property (GOb
 		case PROP_TTL:
 			priv->ttl = g_value_get_uint(value);
 			break;
-		default:	
+		default:
 			G_OBJECT_WARN_INVALID_PROPERTY_ID(
 					object, prop_id, pspec);
 			break;
@@ -176,7 +176,7 @@ purple_media_candidate_get_property (GOb
 {
 	PurpleMediaCandidatePrivate *priv;
 	g_return_if_fail(PURPLE_IS_MEDIA_CANDIDATE(object));
-	
+
 	priv = PURPLE_MEDIA_CANDIDATE_GET_PRIVATE(object);
 
 	switch (prop_id) {
@@ -227,7 +227,7 @@ purple_media_candidate_class_init(Purple
 purple_media_candidate_class_init(PurpleMediaCandidateClass *klass)
 {
 	GObjectClass *gobject_class = (GObjectClass*)klass;
-	
+
 	gobject_class->finalize = purple_media_candidate_finalize;
 	gobject_class->set_property = purple_media_candidate_set_property;
 	gobject_class->get_property = purple_media_candidate_get_property;
============================================================
--- libpurple/media/codec.c	296d1785893ce23e6f0a646836e69f580d05a225
+++ libpurple/media/codec.c	9a46ec0447e76b83d08ca9d79c9f6e7e8388be44
@@ -120,7 +120,7 @@ purple_media_codec_set_property (GObject
 		case PROP_OPTIONAL_PARAMS:
 			priv->optional_params = g_value_get_pointer(value);
 			break;
-		default:	
+		default:
 			G_OBJECT_WARN_INVALID_PROPERTY_ID(
 					object, prop_id, pspec);
 			break;
@@ -133,7 +133,7 @@ purple_media_codec_get_property (GObject
 {
 	PurpleMediaCodecPrivate *priv;
 	g_return_if_fail(PURPLE_IS_MEDIA_CODEC(object));
-	
+
 	priv = PURPLE_MEDIA_CODEC_GET_PRIVATE(object);
 
 	switch (prop_id) {
@@ -155,7 +155,7 @@ purple_media_codec_get_property (GObject
 		case PROP_OPTIONAL_PARAMS:
 			g_value_set_pointer(value, priv->optional_params);
 			break;
-		default:	
+		default:
 			G_OBJECT_WARN_INVALID_PROPERTY_ID(
 					object, prop_id, pspec);
 			break;
@@ -166,7 +166,7 @@ purple_media_codec_class_init(PurpleMedi
 purple_media_codec_class_init(PurpleMediaCodecClass *klass)
 {
 	GObjectClass *gobject_class = (GObjectClass*)klass;
-	
+
 	gobject_class->finalize = purple_media_codec_finalize;
 	gobject_class->set_property = purple_media_codec_set_property;
 	gobject_class->get_property = purple_media_codec_get_property;
============================================================
--- libpurple/media/backend-fs2.c	013ab205756cba7220f01f269f525cd7f3bad80c
+++ libpurple/media/backend-fs2.c	f7d2d8ff1b6e94fa251abf3bc6d78bf5c15fcfa7
@@ -305,7 +305,7 @@ purple_media_backend_fs2_set_property(GO
 					G_CALLBACK(stream_info_cb),
 					PURPLE_MEDIA_BACKEND_FS2(object));
 			break;
-		default:	
+		default:
 			G_OBJECT_WARN_INVALID_PROPERTY_ID(
 					object, prop_id, pspec);
 			break;
@@ -318,7 +318,7 @@ purple_media_backend_fs2_get_property(GO
 {
 	PurpleMediaBackendFs2Private *priv;
 	g_return_if_fail(PURPLE_IS_MEDIA_BACKEND_FS2(object));
-	
+
 	priv = PURPLE_MEDIA_BACKEND_FS2_GET_PRIVATE(object);
 
 	switch (prop_id) {
@@ -328,7 +328,7 @@ purple_media_backend_fs2_get_property(GO
 		case PROP_MEDIA:
 			g_value_set_object(value, priv->media);
 			break;
-		default:	
+		default:
 			G_OBJECT_WARN_INVALID_PROPERTY_ID(
 					object, prop_id, pspec);
 			break;
@@ -1261,7 +1261,7 @@ create_src(PurpleMediaBackendFs2 *self, 
 
 	if ((type_direction & FS_DIRECTION_SEND) == 0)
 		return TRUE;
- 
+
 	session_type = session_type_from_fs(
 			media_type, FS_DIRECTION_SEND);
 	src = purple_media_manager_get_element(
@@ -1329,7 +1329,7 @@ create_src(PurpleMediaBackendFs2 *self, 
 		srcpad = gst_element_get_request_pad(session->tee, "src%d");
 	}
 
-	purple_debug_info("backend-fs2", "connecting pad: %s\n", 
+	purple_debug_info("backend-fs2", "connecting pad: %s\n",
 			  gst_pad_link(srcpad, sinkpad) == GST_PAD_LINK_OK
 			  ? "success" : "failure");
 	gst_element_set_locked_state(session->src, FALSE);
@@ -1582,7 +1582,7 @@ append_relay_info(GValueArray *relay_inf
 {
 	GValue value;
 	GstStructure *turn_setup = gst_structure_new("relay-info",
-				"ip", G_TYPE_STRING, ip, 
+				"ip", G_TYPE_STRING, ip,
 				"port", G_TYPE_UINT, port,
 				"username", G_TYPE_STRING, username,
 				"password", G_TYPE_STRING, password,
@@ -1599,7 +1599,7 @@ append_relay_info(GValueArray *relay_inf
 
 	return relay_info;
 }
-                        
+
 static gboolean
 create_stream(PurpleMediaBackendFs2 *self,
 		const gchar *sess_id, const gchar *who,
@@ -1642,7 +1642,7 @@ create_stream(PurpleMediaBackendFs2 *sel
 	++_num_params;
 
 	if (stun_ip) {
-		purple_debug_info("backend-fs2", 
+		purple_debug_info("backend-fs2",
 			"Setting stun-ip on new stream: %s\n", stun_ip);
 
 		_params[_num_params].name = "stun-ip";
@@ -1668,11 +1668,11 @@ create_stream(PurpleMediaBackendFs2 *sel
 
 		/* should add TCP and perhaps TLS relaying options when these are
 		 supported by libnice using non-google mode */
-		
+
 		purple_debug_info("backend-fs2",
 			"Setting relay-info on new stream\n");
 		_params[_num_params].name = "relay-info";
-		g_value_init(&_params[_num_params].value, 
+		g_value_init(&_params[_num_params].value,
 			G_TYPE_VALUE_ARRAY);
 		g_value_set_boxed(&_params[_num_params].value,
 			relay_info);
============================================================
--- pidgin/gtkdocklet-gtk.c	4128304679ea5f7d9300d37e201912382e2a6410
+++ pidgin/gtkdocklet-gtk.c	1c19d9fa2315562ea3dd1b54d8d8716870c2026c
@@ -2,7 +2,7 @@
  * System tray icon (aka docklet) plugin for Purple
  *
  * Copyright (C) 2007 Anders Hasselqvist
- * 
+ *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
  * published by the Free Software Foundation; either version 2 of the
@@ -12,7 +12,7 @@
  * WITHOUT ANY WARRANTY; without even the implied warranty of
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  * General Public License for more details.
- * 
+ *
  * You should have received a copy of the GNU General Public License
  * along with this program; if not, write to the Free Software
  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
@@ -98,7 +98,7 @@ docklet_gtk_status_activated_cb(GtkStatu
 static void
 docklet_gtk_status_activated_cb(GtkStatusIcon *status_icon, gpointer user_data)
 {
-	pidgin_docklet_clicked(1); 
+	pidgin_docklet_clicked(1);
 }
 
 static void
============================================================
--- libpurple/protocols/mxit/chunk.c	263371e7f9761c36bd7257bdd29eb1c65163236e
+++ libpurple/protocols/mxit/chunk.c	38a64c7ca7209a1c1af4cf88486b3b47276a036b
@@ -591,7 +591,7 @@ void mxit_chunk_parse_cr( char* chunkdat
 			case CP_CHUNK_CLICK :			/* splash click */
 				{
 					struct splash_click_chunk* click = g_new0( struct splash_click_chunk, 1 );
-					
+
 					cr->resources = g_list_append( cr->resources, click );
 					break;
 				}
============================================================
--- libpurple/protocols/mxit/login.c	a10dab5a9666e795e60966664f9fc109e2cabca9
+++ libpurple/protocols/mxit/login.c	7b7b9e3063198ea97fd6100e8592aef440104b12
@@ -111,7 +111,7 @@ static void mxit_connected( struct MXitS
 	/* encrypt the user password */
 	session->encpwd = mxit_encrypt_password( session );
 
-	state = purple_account_get_int( session->acc, MXIT_CONFIG_STATE, MXIT_STATE_LOGIN ); 
+	state = purple_account_get_int( session->acc, MXIT_CONFIG_STATE, MXIT_STATE_LOGIN );
 	if ( state == MXIT_STATE_LOGIN ) {
 		/* create and send login packet */
 		mxit_send_login( session );
============================================================
--- libpurple/protocols/mxit/markup.c	90c609692e713898ddc7407fe933319907091207
+++ libpurple/protocols/mxit/markup.c	fdb0cf48e93b506c8cc1a6c013e72f6c71829f7c
@@ -1011,7 +1011,7 @@ static void inline_image_add( GString* m
 {
 	PurpleStoredImage *image;
 	gconstpointer img_data;
-	gsize img_size;	
+	gsize img_size;
 	gchar* enc;
 
 	image = purple_imgstore_find_by_id( id );
@@ -1138,7 +1138,7 @@ char* mxit_convert_markup_tx( const char
 
 				/* skip to end of tag ('>') */
 				for ( i++; ( i < len ) && ( message[i] != '>' ) ; i++ );
-			
+
 				break;
 
 			case '*' :	/* MXit bold */
============================================================
--- libpurple/protocols/mxit/multimx.c	5cca42f4f0c89b64afc6ec5aca2981bcdb3891b6
+++ libpurple/protocols/mxit/multimx.c	e049ee7b107beaa8c6a5c4a5a5e187a00991abcf
@@ -73,7 +73,7 @@ static struct multimx* find_room_by_id(s
  * Find a MultiMx session based on Alias
  *
  *  @param session		The MXit session object
- *  @param roomname		The UI room-name 
+ *  @param roomname		The UI room-name
  *  @return				The MultiMX room object (or NULL if not found)
  */
 static struct multimx* find_room_by_alias(struct MXitSession* session, const char* roomname)
@@ -647,7 +647,7 @@ int mxit_chat_send(PurpleConnection *gc,
 
 	/* Send packet to MXit */
 	mxit_send_message(session, multimx->roomid, message, TRUE, FALSE);
-	
+
 	/* Determine our nickname to display */
 	if (multimx->nickname)
 		nickname = multimx->nickname;
============================================================
--- libpurple/protocols/mxit/mxit.c	30e852a0681962e9cec0b05e6db5b8c75d3eeeb5
+++ libpurple/protocols/mxit/mxit.c	b17fa9ca5a4ccdda7ae239eb156378817f9404cb
@@ -555,7 +555,7 @@ static void mxit_set_buddy_icon( PurpleC
  * Request profile information for another MXit contact.
  *
  *  @param gc		The connection object
- *  @param who		The username of the contact.		
+ *  @param who		The username of the contact.
  */
 static void mxit_get_info( PurpleConnection *gc, const char *who )
 {
============================================================
--- libpurple/protocols/mxit/profile.c	514add484cd83bdc2c31aea85112ee4c0ae16f5c
+++ libpurple/protocols/mxit/profile.c	2b7bd748818fa1c6fbf135c8119263441427b57b
@@ -107,7 +107,7 @@ static const char* datetime( gint64 msec
  * @return			Date & Time in a display'able format.
  */
 static const char* datetime( gint64 msecs )
-{  
+{
     time_t secs = msecs / 1000;
 
     struct tm t;
@@ -160,7 +160,7 @@ void mxit_show_profile( struct MXitSessi
 			purple_notify_user_info_add_pair( info, _( "Last Online" ), ( profile->lastonline == 0 ) ? _( "Unknown" ) : datetime( profile->lastonline ) );
 
 		/* mood */
-		if ( contact->mood != MXIT_MOOD_NONE )   
+		if ( contact->mood != MXIT_MOOD_NONE )
 			purple_notify_user_info_add_pair( info, _( "Mood" ), mxit_convert_mood_to_name( contact->mood ) );
 		else
 			purple_notify_user_info_add_pair( info, _( "Mood" ), _( "None" ) );
============================================================
--- libpurple/protocols/mxit/protocol.c	3284d0181ce1211b38f711f17020957ae4c2051e
+++ libpurple/protocols/mxit/protocol.c	da5db4568c9908d4425f6adbf40798f71d318dfd
@@ -647,7 +647,7 @@ void mxit_send_register( struct MXitSess
 								"%s%c%i%c%s%c%s%c"			/* dateOfBirth\1gender\1location\1capabilities\1 */
 								"%s%c%i%c%s%c%s",			/* dc\1features\1dialingcode\1locale */
 								session->encpwd, CP_FLD_TERM, MXIT_CP_VERSION, CP_FLD_TERM, CP_MAX_FILESIZE, CP_FLD_TERM, profile->nickname, CP_FLD_TERM,
-								profile->birthday, CP_FLD_TERM, ( profile->male ) ? 1 : 0, CP_FLD_TERM, MXIT_DEFAULT_LOC, CP_FLD_TERM, MXIT_CP_CAP, CP_FLD_TERM, 
+								profile->birthday, CP_FLD_TERM, ( profile->male ) ? 1 : 0, CP_FLD_TERM, MXIT_DEFAULT_LOC, CP_FLD_TERM, MXIT_CP_CAP, CP_FLD_TERM,
 								session->distcode, CP_FLD_TERM, MXIT_CP_FEATURES, CP_FLD_TERM, session->dialcode, CP_FLD_TERM, locale
 	);
 
============================================================
--- libpurple/protocols/mxit/roster.c	42d9f52f4a0fad5b0319c7d505ad9ce46d479008
+++ libpurple/protocols/mxit/roster.c	6ee78f678eeb6c8bab9407223eb68a26bc332e10
@@ -238,7 +238,7 @@ const char* mxit_convert_mood_to_name( s
 /*========================================================================================================================
  * Subscription Types
  */
- 
+
 /*------------------------------------------------------------------------
  * Returns a Contact subscription type as a string.
  *
@@ -468,7 +468,7 @@ void mxit_update_buddy_presence( struct 
 	if ( !contact )
 		return;
 
-	contact->presence = presence;	
+	contact->presence = presence;
 	contact->mood = mood;
 
 	/* validate mood */
============================================================
--- libpurple/protocols/gg/lib/dcc7.c	2b59a42e1c9b53aefeefe65b7bbc030e6dd1fcd9
+++ libpurple/protocols/gg/lib/dcc7.c	b851bcad1ca3d86caeaea966926871284ea8d252
@@ -4,7 +4,7 @@
  *  (C) Copyright 2001-2008 Wojtek Kaniewski <wojtekka at irc.pl>
  *                          Tomasz Chili?ski <chilek at chilan.com>
  *                          Adam Wysocki <gophi at ekg.chmurka.net>
- *  
+ *
  *  Thanks to Jakub Zawadzki <darkjames at darkjames.ath.cx>
  *
  *  This program is free software; you can redistribute it and/or modify
@@ -210,7 +210,7 @@ static int gg_dcc7_listen(struct gg_dcc7
 	}
 
 	// XXX losowa? porty?
-	
+
 	if (!port)
 		port = GG_DEFAULT_DCC_PORT;
 
@@ -242,7 +242,7 @@ static int gg_dcc7_listen(struct gg_dcc7
 
 	dcc->fd = fd;
 	dcc->local_port = port;
-	
+
 	dcc->state = GG_STATE_LISTENING;
 	dcc->check = GG_CHECK_READ;
 	dcc->timeout = GG_DCC7_TIMEOUT_FILE_ACK;
@@ -264,7 +264,7 @@ static int gg_dcc7_listen_and_send_info(
 	gg_debug_dcc(dcc, GG_DEBUG_FUNCTION, "** gg_dcc7_listen_and_send_info(%p)\n", dcc);
 
 	// XXX da? mo?liwo?? konfiguracji?
-	
+
 	dcc->local_addr = dcc->sess->client_addr;
 
 	if (gg_dcc7_listen(dcc, 0) == -1)
@@ -334,7 +334,7 @@ static int gg_dcc7_request_id(struct gg_
 		errno = EINVAL;
 		return -1;
 	}
-	
+
 	memset(&pkt, 0, sizeof(pkt));
 	pkt.type = gg_fix32(type);
 
@@ -595,7 +595,7 @@ int gg_dcc7_handle_id(struct gg_session 
 
 		if (tmp->state != GG_STATE_REQUESTING_ID || tmp->dcc_type != gg_fix32(p->type))
 			continue;
-		
+
 		tmp->cid = p->id;
 
 		switch (tmp->dcc_type) {
@@ -654,9 +654,9 @@ int gg_dcc7_handle_accept(struct gg_sess
 		e->event.dcc7_error = GG_ERROR_DCC7_HANDSHAKE;
 		return 0;
 	}
-	
+
 	// XXX czy dla odwrotnego po??czenia powinni?my wywo?a? ju? zdarzenie GG_DCC7_ACCEPT?
-	
+
 	dcc->offset = gg_fix32(p->offset);
 	dcc->state = GG_STATE_WAITING_FOR_INFO;
 
@@ -685,7 +685,7 @@ int gg_dcc7_handle_info(struct gg_sessio
 		gg_debug_session(sess, GG_DEBUG_MISC, "// gg_dcc7_handle_info() unknown dcc session\n");
 		return 0;
 	}
-	
+
 	if (p->type != GG_DCC7_TYPE_P2P) {
 		gg_debug_session(sess, GG_DEBUG_MISC, "// gg_dcc7_handle_info() unhandled transfer type (%d)\n", p->type);
 		e->type = GG_EVENT_DCC7_ERROR;
@@ -722,7 +722,7 @@ int gg_dcc7_handle_info(struct gg_sessio
 		dcc->fd = -1;
 		dcc->reverse = 1;
 	}
-	
+
 	if (dcc->type == GG_SESSION_DCC7_SEND) {
 		e->type = GG_EVENT_DCC7_ACCEPT;
 		e->event.dcc7_accept.dcc7 = dcc;
@@ -766,7 +766,7 @@ int gg_dcc7_handle_reject(struct gg_sess
 		gg_debug_session(sess, GG_DEBUG_MISC, "// gg_dcc7_handle_reject() unknown dcc session\n");
 		return 0;
 	}
-	
+
 	if (dcc->state != GG_STATE_WAITING_FOR_ACCEPT) {
 		gg_debug_session(sess, GG_DEBUG_MISC, "// gg_dcc7_handle_reject() invalid state\n");
 		e->type = GG_EVENT_DCC7_ERROR;
@@ -806,7 +806,7 @@ int gg_dcc7_handle_new(struct gg_session
 				gg_debug_session(sess, GG_DEBUG_MISC, "// gg_dcc7_handle_new() not enough memory\n");
 				return -1;
 			}
-			
+
 			memset(dcc, 0, sizeof(struct gg_dcc7));
 			dcc->type = GG_SESSION_DCC7_GET;
 			dcc->dcc_type = GG_DCC7_TYPE_FILE;
@@ -838,7 +838,7 @@ int gg_dcc7_handle_new(struct gg_session
 				gg_debug_session(sess, GG_DEBUG_MISC, "// gg_dcc7_handle_packet() not enough memory\n");
 				return -1;
 			}
-			
+
 			memset(dcc, 0, sizeof(struct gg_dcc7));
 
 			dcc->type = GG_SESSION_DCC7_VOICE;
@@ -873,7 +873,7 @@ int gg_dcc7_handle_new(struct gg_session
 /**
  * \internal Ustawia odpowiednie stany wewn?trzne w zale?no?ci od rodzaju
  * po??czenia.
- * 
+ *
  * \param dcc Struktura po??czenia
  *
  * \return 0 je?li si? powiod?o, -1 w przypadku b??du.
============================================================
--- libpurple/protocols/gg/lib/resolver.c	88351e4626d264a861591e607719e9396ef9d1f3
+++ libpurple/protocols/gg/lib/resolver.c	37bca5598e71ab438bb63138a9d8e4975290e35c
@@ -356,17 +356,17 @@ static DWORD WINAPI gg_resolve_win32thre
 	struct in_addr a;
 
 	gg_debug(GG_DEBUG_MISC, "// gg_resolve_win32thread_thread() host: %s, fd: %i called\n", d->hostname, d->fd);
-	
+
 	if ((a.s_addr = inet_addr(d->hostname)) == INADDR_NONE) {
 		/* W przypadku b??du gg_gethostbyname_real() zwr?ci -1
 					 * i nie zmieni &addr. Tam jest ju? INADDR_NONE,
 					 * wi?c nie musimy robi? nic wi?cej. */
 		gg_gethostbyname_real(d->hostname, &a, 0);
 	}
-	
+
 	// if ((a.s_addr = inet_addr(d->hostname)) == INADDR_NONE) {
 		// struct in_addr *hn;
-		
+
 		// if (!(hn = gg_gethostbyname(d->hostname)))
 			// a.s_addr = INADDR_NONE;
 		// else {
@@ -384,7 +384,7 @@ static DWORD WINAPI gg_resolve_win32thre
 	free(d);
 
 	gg_debug(GG_DEBUG_MISC, "// gg_resolve_win32thread_thread() done\n");
-	
+
 	return 0;
 }
 
@@ -397,7 +397,7 @@ static int gg_resolve_win32thread(int *f
 	int pipes[2], new_errno;
 
 	gg_debug(GG_DEBUG_FUNCTION, "** gg_resolve_win32thread(%p, %p, \"%s\");\n", fd, resolver, hostname);
-	
+
 	if (!resolver || !fd || !hostname) {
 		gg_debug(GG_DEBUG_MISC, "// gg_resolve_win32thread() invalid arguments\n");
 		errno = EFAULT;
@@ -438,7 +438,7 @@ static int gg_resolve_win32thread(int *f
 	*fd = pipes[0];
 
 	gg_debug(GG_DEBUG_MISC, "// gg_resolve_win32thread() done\n");
-	
+
 	return 0;
 
 cleanup:
@@ -461,7 +461,7 @@ static void gg_resolve_win32thread_clean
 	struct gg_resolve_win32thread_data *data;
 
 	gg_debug(GG_DEBUG_MISC, "// gg_resolve_win32thread_cleanup() force: %i called\n", force);
-	
+
 	if (priv_data == NULL || *priv_data == NULL)
 		gg_debug(GG_DEBUG_MISC, "// gg_resolve_win32thread_cleanup() priv_data: NULL\n");
 		return;
@@ -494,7 +494,7 @@ static void gg_resolve_win32thread_clean
  *
  * Po??czenia asynchroniczne nie mog? blokowa? procesu w trakcie rozwi?zywania
  * nazwy serwera. W tym celu tworzony jest potok, nowy proces i dopiero w nim
- * przeprowadzane jest rozwi?zywanie nazwy. Deskryptor strony do odczytu 
+ * przeprowadzane jest rozwi?zywanie nazwy. Deskryptor strony do odczytu
  * zapisuje si? w strukturze sieci i czeka na dane w postaci struktury
  * \c in_addr. Je?li nie znaleziono nazwy, zwracana jest \c INADDR_NONE.
  *
@@ -673,7 +673,7 @@ static void *gg_resolver_pthread_thread(
 
 	if (write(data->wfd, &addr, sizeof(addr)) == sizeof(addr))
 		pthread_exit(NULL);
-	else 
+	else
 		pthread_exit((void*) -1);
 
 	return NULL;	/* ?eby kompilator nie marudzi? */
@@ -989,15 +989,15 @@ int gg_global_set_resolver(gg_resolver_t
 			gg_global_resolver_cleanup = gg_resolver_fork_cleanup;
 			return 0;
 #endif
-			
+
 #ifdef _WIN32
 		case GG_RESOLVER_WIN32:
 			gg_global_resolver_type = type;
 			gg_global_resolver_start = gg_resolve_win32thread;
 			gg_global_resolver_cleanup = gg_resolve_win32thread_cleanup;
 			return 0;
-#endif			
-		
+#endif
+
 #ifdef GG_CONFIG_HAVE_PTHREAD
 		case GG_RESOLVER_PTHREAD:
 			gg_global_resolver_type = type;
@@ -1038,7 +1038,7 @@ gg_resolver_t gg_global_get_resolver(voi
  *  - \c "int force" &mdash; flaga m?wi?ca o tym, ?e zasoby s? zwalniane przed zako?czeniem rozwi?zywania nazwy, np. z powodu zamkni?cia sesji.
  *
  * W?asny kod rozwi?zywania nazwy powinien stworzy? potok, par? gniazd lub
- * inny deskryptor pozwalaj?cy na co najmniej jednostronn? komunikacj? i 
+ * inny deskryptor pozwalaj?cy na co najmniej jednostronn? komunikacj? i
  * przekaza? go w parametrze \c fd. Po zako?czeniu rozwi?zywania nazwy,
  * powinien wys?a? otrzymany adres IP w postaci sieciowej (big-endian) do
  * deskryptora. Je?li rozwi?zywanie nazwy si? nie powiedzie, nale?y wys?a?
============================================================
--- libpurple/protocols/gg/lib/sha1.c	a435e563568a4d09e68a08f659c64ae99bd8ec66
+++ libpurple/protocols/gg/lib/sha1.c	7000a9b21613434c8f9e4348959d4aea62c2961c
@@ -228,12 +228,12 @@ void gg_login_hash_sha1(const char *pass
 void gg_login_hash_sha1(const char *password, uint32_t seed, uint8_t *result)
 {
 	SHA_CTX ctx;
-	
+
 	SHA1_Init(&ctx);
 	SHA1_Update(&ctx, (const unsigned char*) password, strlen(password));
 	seed = gg_fix32(seed);
 	SHA1_Update(&ctx, (uint8_t*) &seed, 4);
-	
+
 	SHA1_Final(result, &ctx);
 }
 
============================================================
--- libpurple/protocols/jabber/google/google.c	8b8c127526a3c85018acc671e3bd76f3fd528a37
+++ libpurple/protocols/jabber/google/google.c	86b3dfd8e0d957502ff32565b095b5b997757a68
@@ -159,7 +159,7 @@ void google_buddy_node_chat(PurpleBlistN
 	g_return_if_fail(gc != NULL);
 	js = purple_connection_get_protocol_data(gc);
 
-	room = g_strdup_printf("private-chat-%s", uuid);	
+	room = g_strdup_printf("private-chat-%s", uuid);
 	chat = jabber_join_chat(js, room, GOOGLE_GROUPCHAT_SERVER, js->user->node,
 	                        NULL, NULL);
 	if (chat) {
============================================================
--- libpurple/protocols/jabber/google/google_session.c	e5040d7269213d2586e6bb19b62fdee7d577ca8a
+++ libpurple/protocols/jabber/google/google_session.c	413f3ad4428aa7d31b87dcc94255cf2c57d733c2
@@ -62,7 +62,7 @@ google_session_destroy(GoogleSession *se
 
 	if (session->description)
 		xmlnode_free(session->description);
-	
+
 	g_free(session->session_data);
 	g_free(session);
 }
@@ -427,7 +427,7 @@ jabber_google_session_initiate(JabberStr
 	session->remote_jid = jid;
 	session_data = g_new0(GoogleAVSessionData, 1);
 	session->session_data = session_data;
-	
+
 	if (type & PURPLE_MEDIA_VIDEO)
 		session_data->video = TRUE;
 
@@ -440,7 +440,7 @@ jabber_google_session_initiate(JabberStr
 		jabber_google_relay_response_session_initiate_cb(session, NULL, 0, 0, 0,
 			NULL, NULL);
 	}
-	
+
 	/* we don't actually know yet wether it succeeded... maybe this is very
 	 wrong... */
 	return TRUE;
@@ -464,7 +464,7 @@ jabber_google_relay_response_session_han
 		(GoogleAVSessionData *) session->session_data;
 
 	params =
-		jabber_google_session_get_params(js, relay_ip, relay_udp, relay_tcp, 
+		jabber_google_session_get_params(js, relay_ip, relay_udp, relay_tcp,
 	    	relay_ssltcp, relay_username, relay_password, &num_params);
 
 	if (purple_media_add_stream(session_data->media, "google-voice",
@@ -483,20 +483,20 @@ jabber_google_relay_response_session_han
 
 		if (session_data->remote_audio_candidates) {
 			purple_media_add_remote_candidates(session_data->media,
-				"google-voice", session->remote_jid, 
+				"google-voice", session->remote_jid,
 			    session_data->remote_audio_candidates);
 			purple_media_candidate_list_free(session_data->remote_audio_candidates);
 			session_data->remote_audio_candidates = NULL;
 		}
 		if (session_data->remote_video_candidates) {
 			purple_media_add_remote_candidates(session_data->media,
-				"google-video", session->remote_jid, 
+				"google-video", session->remote_jid,
 			    session_data->remote_video_candidates);
 			purple_media_candidate_list_free(session_data->remote_video_candidates);
 			session_data->remote_video_candidates = NULL;
 		}
 	}
-		
+
 	g_free(params);
 
 	for (codec_element = xmlnode_get_child(session->description, "payload-type");
@@ -561,7 +561,7 @@ google_session_handle_initiate(JabberStr
 	const gchar *xmlns;
 	GoogleAVSessionData *session_data =
 		(GoogleAVSessionData *) session->session_data;
-	
+
 	if (session->state != UNINIT) {
 		purple_debug_error("jabber", "Received initiate for active session.\n");
 		return FALSE;
@@ -598,9 +598,9 @@ google_session_handle_initiate(JabberStr
 			G_CALLBACK(google_session_stream_info_cb), session);
 
 	session->iq_id = g_strdup(iq_id);
-	
+
 	if (js->google_relay_host && js->google_relay_token) {
-		jabber_google_do_relay_request(js, session, 
+		jabber_google_do_relay_request(js, session,
 			jabber_google_relay_response_session_handle_initiate_cb);
 	} else {
 		jabber_google_relay_response_session_handle_initiate_cb(session, NULL,
@@ -621,7 +621,7 @@ google_session_handle_candidates(JabberS
 	char n[4];
 	GoogleAVSessionData *session_data =
 		(GoogleAVSessionData *) session->session_data;
-	
+
 	for (cand = xmlnode_get_child(sess, "candidate"); cand;
 			cand = xmlnode_get_next_twin(cand)) {
 		PurpleMediaCandidate *info;
@@ -636,9 +636,9 @@ google_session_handle_candidates(JabberS
 		if (cname && type && address && port) {
 			PurpleMediaCandidateType candidate_type;
 			guint prio = preference ? g_ascii_strtod(preference, NULL) * 1000 : 0;
-			
+
 			g_snprintf(n, sizeof(n), "S%d", name++);
-			
+
 			if (g_str_equal(type, "local"))
 				candidate_type = PURPLE_MEDIA_CANDIDATE_TYPE_HOST;
 			else if (g_str_equal(type, "stun"))
@@ -713,7 +713,7 @@ google_session_handle_accept(JabberStrea
 	gboolean video = (xmlns && !strcmp(xmlns, NS_GOOGLE_SESSION_VIDEO));
 	GoogleAVSessionData *session_data =
 		(GoogleAVSessionData *) session->session_data;
-	
+
 	for (; codec_element; codec_element = codec_element->next) {
 		const gchar *xmlns, *encoding_name, *id,
 				*clock_rate, *width, *height, *framerate;
============================================================
--- libpurple/protocols/jabber/google/jingleinfo.c	8579fd72a6ab4f47db130543e26240673017ea4b
+++ libpurple/protocols/jabber/google/jingleinfo.c	b7d73a6b8c375f619c65f4a861f6c4322affe0b0
@@ -124,7 +124,7 @@ jabber_google_jingle_info_common(JabberS
 	if (relay) {
 		xmlnode *token = xmlnode_get_child(relay, "token");
 		xmlnode *server = xmlnode_get_child(relay, "server");
-		
+
 		if (token) {
 			gchar *relay_token = xmlnode_get_data(token);
 
@@ -133,7 +133,7 @@ jabber_google_jingle_info_common(JabberS
 		}
 
 		if (server) {
-			js->google_relay_host = 
+			js->google_relay_host =
 				g_strdup(xmlnode_get_attrib(server, "host"));
 		}
 	}
============================================================
--- libpurple/protocols/oscar/authorization.c	c3d3f1e1bce94fdfa85624ecc34a0a0cc1c644d5
+++ libpurple/protocols/oscar/authorization.c	9b453d50f9c436df99b5979bf65538127ad7a61f
@@ -89,7 +89,7 @@ oscar_auth_dontgrant(struct name_data *d
 	OscarData *od = purple_connection_get_protocol_data(gc);
 
 	aim_ssi_sendauthreply(od, data->name, 0x00, msg ? msg : _("No reason given."));
-	
+
 	oscar_free_name_data(data);
 }
 
============================================================
--- libpurple/protocols/msn/p2p.c	11673bae5e569ec2cdf8311695f88786451a773a
+++ libpurple/protocols/msn/p2p.c	0b068478ede35cff2225a9f2d4d264170b2dfdc6
@@ -52,7 +52,7 @@ msn_p2p_header_to_wire(MsnP2PHeader *hea
 {
 	char *wire;
 	char *tmp;
-	
+
 	tmp = wire = g_new(char, P2P_PACKET_HEADER_SIZE);
 
 	msn_push32le(tmp, header->session_id);
============================================================
--- libpurple/protocols/msn/slpmsg_part.c	19e57a64cd10530e1018f1a57e74a09d4b5ed77b
+++ libpurple/protocols/msn/slpmsg_part.c	11c2906a2b2b42ae25cd14202e48637bea9f8752
@@ -72,7 +72,7 @@ MsnSlpMessagePart *msn_slpmsgpart_new_fr
 	}
 
 	/* Extract the footer */
-	if (body_len >= 0) 
+	if (body_len >= 0)
 		part->footer = msn_p2p_footer_from_wire(data);
 
 	return part;
============================================================
--- libpurple/protocols/oscar/encoding.c	17330bb539abd858fd015aea366a83e2052dabea
+++ libpurple/protocols/oscar/encoding.c	908fd6b07c9012f8603f55247eab52023076dd24
@@ -51,7 +51,7 @@ oscar_encoding_to_utf8(const char *encod
 	gchar *utf8 = NULL;
 	const gchar *glib_encoding = NULL;
 	gchar *extracted_encoding = encoding_extract(encoding);
-	
+
 	if (extracted_encoding == NULL || *extracted_encoding == '\0') {
 		purple_debug_info("oscar", "Empty encoding, assuming UTF-8\n");
 	} else if (!g_ascii_strcasecmp(extracted_encoding, "iso-8859-1")) {
============================================================
--- libpurple/protocols/jabber/google/relay.c	9c274e81dc32d726406c2c2e26e683df01f777ca
+++ libpurple/protocols/jabber/google/relay.c	482f69f1a3ab5051c1a053f392fa1f111d0079c1
@@ -38,7 +38,7 @@ jabber_google_relay_parse_response(const
 	for (; lines[i] ; i++) {
 		gchar *line = lines[i];
 		gchar **parts = g_strsplit(line, "=", 2);
-		
+
 		if (parts[0] && parts[1]) {
 			if (purple_strequal(parts[0], "relay.ip")) {
 				*ip = g_strdup(parts[1]);
@@ -61,7 +61,7 @@ static void
 }
 
 static void
-jabber_google_relay_remove_url_data(JabberStream *js, 
+jabber_google_relay_remove_url_data(JabberStream *js,
 	PurpleUtilFetchUrlData *url_data)
 {
 	GList *iter = js->google_relay_requests;
@@ -76,8 +76,8 @@ static void
 }
 
 static void
-jabber_google_relay_fetch_cb(PurpleUtilFetchUrlData *url_data, 
-	gpointer user_data, const gchar *url_text, gsize len, 
+jabber_google_relay_fetch_cb(PurpleUtilFetchUrlData *url_data,
+	gpointer user_data, const gchar *url_text, gsize len,
 	const gchar *error_message)
 {
 	JabberGoogleRelayCallbackData *data =
@@ -93,7 +93,7 @@ jabber_google_relay_fetch_cb(PurpleUtilF
 	gchar *relay_password = NULL;
 
 	g_free(data);
-	
+
 	if (url_data) {
 		jabber_google_relay_remove_url_data(js, url_data);
 	}
@@ -128,15 +128,15 @@ jabber_google_do_relay_request(JabberStr
 		g_strdup_printf("GET /create_session HTTP/1.0\r\n"
 			            "Host: %s\r\n"
 						"X-Talk-Google-Relay-Auth: %s\r\n"
-						"X-Google-Relay-Auth: %s\r\n\r\n", 
+						"X-Google-Relay-Auth: %s\r\n\r\n",
 			js->google_relay_host, js->google_relay_token, js->google_relay_token);
 	JabberGoogleRelayCallbackData *data = g_new0(JabberGoogleRelayCallbackData, 1);
 
 	data->session = session;
 	data->cb = cb;
-	purple_debug_info("jabber", 
-		"sending Google relay request %s to %s\n", request, url); 
-	url_data = 
+	purple_debug_info("jabber",
+		"sending Google relay request %s to %s\n", request, url);
+	url_data =
 		purple_util_fetch_url_request(url, FALSE, NULL, FALSE, request, FALSE,
 			jabber_google_relay_fetch_cb, data);
 	if (url_data) {
============================================================
--- libpurple/protocols/msn/tlv.c	76f41ee1d0b84c7e43608145443fb932ebca8a24
+++ libpurple/protocols/msn/tlv.c	7cd1b7f5716448c2bbd7fc07284e6304b504f3ad
@@ -267,7 +267,7 @@ msn_tlvlist_replace_8(GSList **list, con
 	return msn_tlvlist_replace_raw(list, type, 1, v8);
 }
 
-int 
+int
 msn_tlvlist_replace_32(GSList **list, const guint16 type, const guint32 value)
 {
 	char v32[4];


More information about the Commits mailing list