Index: addressbook/gui/contact-editor/e-contact-editor.c
===================================================================
--- addressbook/gui/contact-editor/e-contact-editor.c	(revision 34367)
+++ addressbook/gui/contact-editor/e-contact-editor.c	(revision 34368)
@@ -2260,12 +2260,15 @@ extract_simple_field (EContactEditor *ed
 		photo.data.inlined.mime_type = NULL;
 		if (editor->image_changed)
 		{
+			gchar *img_buff = NULL;
 			if (editor->image_set &&
 			    e_image_chooser_get_image_data (E_IMAGE_CHOOSER (widget),
-							    (char **)&photo.data.inlined.data, &photo.data.inlined.length)) {
+							    &img_buff, &photo.data.inlined.length)) {
 				GdkPixbuf *pixbuf, *new;
 				GdkPixbufLoader *loader = gdk_pixbuf_loader_new();
 				
+				photo.data.inlined.data = (unsigned char *)img_buff;
+				img_buff = NULL;
 				gdk_pixbuf_loader_write (loader, photo.data.inlined.data, photo.data.inlined.length, NULL);
 				gdk_pixbuf_loader_close (loader, NULL);
 				
@@ -2295,9 +2298,11 @@ extract_simple_field (EContactEditor *ed
 								GdkPixbufFormat *format = gdk_pixbuf_loader_get_format (loader);
 								gchar *format_name = gdk_pixbuf_format_get_name (format);
 								g_free(photo.data.inlined.data);
-								gdk_pixbuf_save_to_buffer (new, (gchar **)&(photo.data.inlined.data),
+								gdk_pixbuf_save_to_buffer (new, &img_buff,
 											   &photo.data.inlined.length,
 											   format_name, NULL, NULL);
+								photo.data.inlined.data = (unsigned char *)img_buff;
+								img_buff = NULL;
 								g_free (format_name);
 								g_object_unref (new);
 							}
Index: addressbook/gui/component/addressbook-config.c
===================================================================
--- addressbook/gui/component/addressbook-config.c	(revision 34367)
+++ addressbook/gui/component/addressbook-config.c	(revision 34368)
@@ -396,7 +396,7 @@ static void
 query_for_supported_bases (GtkWidget *button, AddressbookSourceDialog *sdialog)
 {
 	GtkTreeSelection *selection;
-	GtkListStore *model;
+	GtkTreeModel *model;
 	GtkTreeView *table;
 	GtkWidget *dialog;
 	GtkWidget *supported_bases_table;
@@ -423,19 +423,19 @@ query_for_supported_bases (GtkWidget *bu
 	gtk_widget_show_all (supported_bases_table);
 
 	table = g_object_get_data (G_OBJECT (supported_bases_table), "table");
-	model = GTK_LIST_STORE (gtk_tree_view_get_model(table));
+	model = gtk_tree_view_get_model (table);
 	selection = gtk_tree_view_get_selection (table);
 	g_signal_connect (selection, "changed", G_CALLBACK (search_base_selection_model_changed), dialog);
 	search_base_selection_model_changed (selection, dialog);
 
-	if (do_ldap_root_dse_query (sdialog, model, sdialog->source)) {
+	if (do_ldap_root_dse_query (sdialog, GTK_LIST_STORE (model), sdialog->source)) {
 		gtk_widget_show (dialog);
 
 		if (gtk_dialog_run (GTK_DIALOG (dialog)) == GTK_RESPONSE_OK
-		    && gtk_tree_selection_get_selected(selection, (GtkTreeModel **)&model, &iter)) {
+		    && gtk_tree_selection_get_selected (selection, &model, &iter)) {
 			char *dn;
 
-			gtk_tree_model_get ((GtkTreeModel *)model, &iter, 0, &dn, -1);
+			gtk_tree_model_get (model, &iter, 0, &dn, -1);
 			gtk_entry_set_text((GtkEntry *)sdialog->rootdn, dn);
 			g_free(dn);
 		}
Index: addressbook/gui/widgets/eab-gui-util.c
===================================================================
--- addressbook/gui/widgets/eab-gui-util.c	(revision 34367)
+++ addressbook/gui/widgets/eab-gui-util.c	(revision 34368)
@@ -505,7 +505,6 @@ eab_contact_save (char *title, EContact 
 	GtkWidget *filesel;
 	char *file;
 	char *name;
-	char *full_filename;
 	SaveAsInfo *info = g_new(SaveAsInfo, 1);
 
 	name = e_contact_get (contact, E_CONTACT_FILE_AS);
@@ -548,7 +547,6 @@ eab_contact_list_save (char *title, GLis
 	GtkWidget *filesel;
 	SaveAsInfo *info = g_new(SaveAsInfo, 1);
 	char *file;
-	char *full_filename;
 
 	filesel = gtk_file_chooser_dialog_new (title,
 					       parent_window,
Index: addressbook/conduit/address-conduit.c
===================================================================
--- addressbook/conduit/address-conduit.c	(revision 34367)
+++ addressbook/conduit/address-conduit.c	(revision 34368)
@@ -806,9 +806,10 @@ local_record_to_pilot_record (EAddrLocal
 			      EAddrConduitContext *ctxt)
 {
 	GnomePilotRecord p;
-	static char record[0xffff];
 #ifdef PILOT_LINK_0_12
 	pi_buffer_t * buffer;
+#else
+	static char record[0xffff];
 #endif
 	
 	g_assert (local->addr != NULL );
@@ -1283,13 +1284,14 @@ pre_sync (GnomePilotConduit *conduit,
 	EBookQuery *query;
     	GList *l;
 	int len;
-	unsigned char *buf;
 	char *filename;
 	char *change_id;
 	char *auth;
 	gint num_records, add_records = 0, mod_records = 0, del_records = 0;
 #ifdef PILOT_LINK_0_12
 	pi_buffer_t *buffer;
+#else
+	unsigned char *buf;
 #endif
 
 	abs_conduit = GNOME_PILOT_CONDUIT_SYNC_ABS (conduit);
Index: addressbook/ChangeLog
===================================================================
--- addressbook/ChangeLog	(revision 34367)
+++ addressbook/ChangeLog	(revision 34368)
@@ -1,3 +1,13 @@
+2007-10-09  Matthew Barnes  <mbarnes@redhat.com>
+
+	** Fixes part of bug #437579
+
+	* conduit/address-conduit.c:
+	* gui/contact-editor/e-contact-editor.c:
+	* gui/component/addressbook-config.c:
+	* gui/widgets/eab-gui-util.c:
+	Fix various compiler warnings.  Patch from Milan Crha.
+
 2007-10-04  Matthew Barnes  <mbarnes@redhat.com>
 
 	** Fixes part of bug #477045
Index: tools/killev.c
===================================================================
--- tools/killev.c	(revision 34367)
+++ tools/killev.c	(revision 34368)
@@ -196,7 +196,8 @@ main (int argc, char **argv)
 
 	language_names = g_get_language_names ();
 	while (*language_names != NULL)
-		languages = g_slist_append (languages, *language_names++);
+		languages = g_slist_append (
+                        languages, (gpointer) *language_names++);
 
 	components = g_hash_table_new_full (
 		g_str_hash, g_str_equal,
Index: shell/e-shell.c
===================================================================
--- shell/e-shell.c	(revision 34367)
+++ shell/e-shell.c	(revision 34368)
@@ -98,7 +98,10 @@ struct _EShellPrivate {
 	EvolutionListener *line_status_listener;
 
 	/* Settings Dialog */
-	GtkWidget *settings_dialog;
+	union {
+		GtkWidget *settings_dialog;
+		gpointer settings_dialog_pointer;
+	};
 
 	/* If we're quitting and things are still busy, a timeout handler */
 	guint quit_timeout;
@@ -1257,7 +1260,7 @@ e_shell_show_settings (EShell *shell,
 	if (type != NULL)
 		e_shell_settings_dialog_show_type (E_SHELL_SETTINGS_DIALOG (priv->settings_dialog), type);
 
-	g_object_add_weak_pointer (G_OBJECT (priv->settings_dialog), (void **) & priv->settings_dialog);
+	g_object_add_weak_pointer (G_OBJECT (priv->settings_dialog), &priv->settings_dialog_pointer);
 
 	gtk_window_set_transient_for (GTK_WINDOW (priv->settings_dialog), GTK_WINDOW (shell_window));
 	gtk_widget_show (priv->settings_dialog);
Index: shell/e-shell-window.c
===================================================================
--- shell/e-shell-window.c	(revision 34367)
+++ shell/e-shell-window.c	(revision 34368)
@@ -88,7 +88,10 @@ typedef struct _ComponentView ComponentV
 
 
 struct _EShellWindowPrivate {
-	EShell *shell;
+	union {
+		EShell *shell;
+		gpointer shell_pointer;
+	};
 
 	EShellView *shell_view;	/* CORBA wrapper for this, just a placeholder */
 
@@ -869,7 +872,7 @@ impl_dispose (GObject *object)
 	priv->destroyed = TRUE;
 	
 	if (priv->shell != NULL) {
-		g_object_remove_weak_pointer (G_OBJECT (priv->shell), (void **) &priv->shell);
+		g_object_remove_weak_pointer (G_OBJECT (priv->shell), &priv->shell_pointer);
 		priv->shell = NULL;
 	}
 
@@ -1052,7 +1055,7 @@ e_shell_window_new (EShell *shell,
 	}
 
 	window->priv->shell = shell;
-	g_object_add_weak_pointer (G_OBJECT (shell), (void **) &window->priv->shell);
+	g_object_add_weak_pointer (G_OBJECT (shell), &window->priv->shell_pointer);
 
 	/* FIXME TODO: Add system_exception signal handling and all the other
 	   stuff from e_shell_view_construct().  */
Index: shell/ChangeLog
===================================================================
--- shell/ChangeLog	(revision 34367)
+++ shell/ChangeLog	(revision 34368)
@@ -1,3 +1,11 @@
+2007-10-09  Matthew Barnes  <mbarnes@redhat.com>
+
+	** Fixes part of bug #437579
+
+	* e-shell.c:
+	* e-shell-window.c:
+	Fix various compiler warnings.  Patch from Milan Crha.
+
 2007-10-03  Matthew Barnes  <mbarnes@redhat.com>
 
 	* e-shell-window-commands.c (command_about):
Index: smime/lib/e-cert-db.c
===================================================================
--- smime/lib/e-cert-db.c	(revision 34367)
+++ smime/lib/e-cert-db.c	(revision 34368)
@@ -581,6 +581,7 @@ handle_ca_cert_download(ECertDB *cert_db
 {
 	ECert *certToShow;
 	SECItem der;
+	char *raw_der = NULL;
 	CERTCertificate *tmpCert;
 
 	/* First thing we have to do is figure out which certificate
@@ -648,11 +649,13 @@ handle_ca_cert_download(ECertDB *cert_db
 		return FALSE;
 	}
 
-	if (!e_cert_get_raw_der (certToShow, (char**)&der.data, &der.len)) {
+	if (!e_cert_get_raw_der (certToShow, &raw_der, &der.len)) {
 		/* XXX gerror */
 		return FALSE;
 	}
 
+	der.data = (unsigned char *)raw_der;
+
 	{
 		/*PR_LOG(gPIPNSSLog, PR_LOG_DEBUG, ("Creating temp cert\n"));*/
 		CERTCertDBHandle *certdb = CERT_GetDefaultCertDB();
Index: smime/ChangeLog
===================================================================
--- smime/ChangeLog	(revision 34367)
+++ smime/ChangeLog	(revision 34368)
@@ -1,3 +1,10 @@
+2007-10-09  Matthew Barnes  <mbarnes@redhat.com>
+
+	** Fixes part of bug #437579
+
+	* lib/e-cert-db.c:
+	Fix various compiler warnings.  Patch from Milan Crha.
+
 2007-09-14  Matthew Barnes  <mbarnes@redhat.com>
 
 	** Fixes part of bug #476231
Index: plugins/bbdb/ChangeLog
===================================================================
--- plugins/bbdb/ChangeLog	(revision 34367)
+++ plugins/bbdb/ChangeLog	(revision 34368)
@@ -1,3 +1,11 @@
+2007-10-09  Matthew Barnes  <mbarnes@redhat.com>
+
+	** Fixes part of bug #437579
+
+	* bbdb.c:
+	* gaimbuddies.c:
+	Fix various compiler warnings.  Patch from Milan Crha.
+
 2007-09-27  Matthew Barnes  <mbarnes@redhat.com>
 
 	* bbdb.c (bbdb_page_factory):
Index: plugins/bbdb/bbdb.c
===================================================================
--- plugins/bbdb/bbdb.c	(revision 34367)
+++ plugins/bbdb/bbdb.c	(revision 34368)
@@ -266,8 +266,6 @@ bbdb_open_addressbook (int type)
 	char        *uri;
 	EBook       *book = NULL;
 
-	gboolean     enable;
-
 	gboolean     status;
 	GError      *error = NULL;
 	
Index: plugins/bbdb/gaimbuddies.c
===================================================================
--- plugins/bbdb/gaimbuddies.c	(revision 34367)
+++ plugins/bbdb/gaimbuddies.c	(revision 34368)
@@ -241,11 +241,12 @@ bbdb_merge_buddy_to_contact (EBook *book
 	if (b->icon != NULL) {
 		photo = e_contact_get (c, E_CONTACT_PHOTO);
 		if (photo == NULL) {
+			gchar *contents = NULL;
 
 			photo = g_new0 (EContactPhoto, 1);
 			photo->type = E_CONTACT_PHOTO_TYPE_INLINED;
 
-			if (! g_file_get_contents (b->icon, (gchar **) &photo->data.inlined.data, &photo->data.inlined.length, &error)) {
+			if (! g_file_get_contents (b->icon, &contents, &photo->data.inlined.length, &error)) {
 				g_warning ("bbdb: Could not read buddy icon: %s\n", error->message);
 				g_error_free (error);
 				for (l = ims; l != NULL; l = l->next)
@@ -254,6 +255,7 @@ bbdb_merge_buddy_to_contact (EBook *book
 				return dirty;
 			}
 
+			photo->data.inlined.data = (unsigned char *)contents;
 			e_contact_set (c, E_CONTACT_PHOTO, (gpointer) photo);
 			dirty = TRUE;
 		}
Index: plugins/exchange-operations/exchange-user-dialog.c
===================================================================
--- plugins/exchange-operations/exchange-user-dialog.c	(revision 34367)
+++ plugins/exchange-operations/exchange-user-dialog.c	(revision 34368)
@@ -250,7 +250,7 @@ e2k_user_dialog_get_user_list (E2kUserDi
 		return NULL;
 
 	for (l = destinations; l; l = g_list_next (l)) {
-		char *mail;
+		const char *mail;
 		destination = l->data;
 
 		mail = e_destination_get_email (destination);
Index: plugins/exchange-operations/ChangeLog
===================================================================
--- plugins/exchange-operations/ChangeLog	(revision 34367)
+++ plugins/exchange-operations/ChangeLog	(revision 34368)
@@ -1,3 +1,10 @@
+2007-10-09  Matthew Barnes  <mbarnes@redhat.com>
+
+	** Fixes part of bug #437579
+
+	* exchange-user-dialog.c:
+	Fix various compiler warnings.  Patch from Milan Crha.
+
 2007-10-02  Matthew Barnes  <mbarnes@redhat.com>
 
 	** Fixes part of bug #469657
Index: plugins/calendar-http/ChangeLog
===================================================================
--- plugins/calendar-http/ChangeLog	(revision 34367)
+++ plugins/calendar-http/ChangeLog	(revision 34368)
@@ -1,3 +1,10 @@
+2007-10-09  Matthew Barnes  <mbarnes@redhat.com>
+
+	** Fixes part of bug #437579
+
+	* calendar-http.c:
+	Fix various compiler warnings.  Patch from Milan Crha.
+
 2007-07-25  Milan Crha  <mcrha@redhat.com>
 
 	** Fix for bug #268162
Index: plugins/calendar-http/calendar-http.c
===================================================================
--- plugins/calendar-http/calendar-http.c	(revision 34367)
+++ plugins/calendar-http/calendar-http.c	(revision 34368)
@@ -377,9 +377,9 @@ e_calendar_http_auth (EPlugin *epl, ECon
 	GtkWidget *entry, *parent;
 	int row;
 	ECalConfigTargetSource *t = (ECalConfigTargetSource *) data->target;
-	ESource *source = t->source;
 	EUri *uri;
-	char* uri_text;
+	char *uri_text;
+	const char *username;
 	static GtkWidget *hidden = NULL;
 
 	if (!hidden)
@@ -408,11 +408,11 @@ e_calendar_http_auth (EPlugin *epl, ECon
 	gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.0);
 	gtk_table_attach (GTK_TABLE (parent), label, 0, 1, row, row+1, GTK_FILL, GTK_SHRINK, 0, 0);
 
-	uri_text = e_source_get_property (t->source, "username");
+	username = e_source_get_property (t->source, "username");
 
 	entry = gtk_entry_new ();
 	gtk_widget_show (entry);
-	gtk_entry_set_text (GTK_ENTRY (entry), uri_text ? uri_text : "");
+	gtk_entry_set_text (GTK_ENTRY (entry), username ? username : "");
 	gtk_label_set_mnemonic_widget (GTK_LABEL (label), entry);
 	g_signal_connect (G_OBJECT (entry), "changed", G_CALLBACK (username_changed), t->source);
 
Index: plugins/face/face.c
===================================================================
--- plugins/face/face.c	(revision 34367)
+++ plugins/face/face.c	(revision 34368)
@@ -98,7 +98,7 @@ void org_gnome_composer_face (EPlugin * 
 							d (printf ("\n\a Invalid Image Size. Please choose a 48*48 image\n\a"));
 							e_error_run (NULL, "org.gnome.evolution.plugins.face:invalid-image-size", NULL, NULL);
 						} else {
-							file_contents = g_base64_encode (file_contents, length);
+							file_contents = g_base64_encode ((guchar *) file_contents, length);
 							g_file_set_contents (filename, file_contents, -1, &error);
 						}
 					}
Index: plugins/face/ChangeLog
===================================================================
--- plugins/face/ChangeLog	(revision 34367)
+++ plugins/face/ChangeLog	(revision 34368)
@@ -1,3 +1,10 @@
+2007-10-09  Matthew Barnes  <mbarnes@redhat.com>
+
+	** Fixes part of bug #437579
+
+	* face.c:
+	Fix various compiler warnings.  Patch from Milan Crha.
+
 2007-09-27  Matthew Barnes  <mbarnes@redhat.com>
 
 	* org-gnome-face-eplug.xml:
Index: mail/mail-vfolder.c
===================================================================
--- mail/mail-vfolder.c	(revision 34367)
+++ mail/mail-vfolder.c	(revision 34368)
@@ -725,15 +725,17 @@ rule_changed(FilterRule *rule, CamelFold
 
 	/* if the folder has changed name, then add it, then remove the old manually */
 	if (strcmp(folder->full_name, rule->name) != 0) {
-		char *key, *oldname;
-		CamelFolder *old;
+		char *oldname;
+
+		gpointer key;
+		gpointer oldfolder;
 
 		LOCK();
 		d(printf("Changing folder name in hash table to '%s'\n", rule->name));
-		if (g_hash_table_lookup_extended(vfolder_hash, folder->full_name, (void **)&key, (void **)&old)) {
-			g_hash_table_remove(vfolder_hash, key);
-			g_free(key);
-			g_hash_table_insert(vfolder_hash, g_strdup(rule->name), folder);
+		if (g_hash_table_lookup_extended (vfolder_hash, folder->full_name, &key, &oldfolder)) {
+			g_hash_table_remove (vfolder_hash, key);
+			g_free (key);
+			g_hash_table_insert (vfolder_hash, g_strdup(rule->name), folder);
 			UNLOCK();
 		} else {
 			UNLOCK();
@@ -787,8 +789,9 @@ static void context_rule_added(RuleConte
 
 static void context_rule_removed(RuleContext *ctx, FilterRule *rule)
 {
-	char *key, *path;
-	CamelFolder *folder = NULL;
+	char *path;
+
+	gpointer key, folder = NULL;
 
 	d(printf("rule removed; %s\n", rule->name));
 
@@ -802,16 +805,16 @@ static void context_rule_removed(RuleCon
 	g_free(path);
 	
 	LOCK();
-	if (g_hash_table_lookup_extended(vfolder_hash, rule->name, (void **)&key, (void **)&folder)) {
-		g_hash_table_remove(vfolder_hash, key);
-		g_free(key);
+	if (g_hash_table_lookup_extended (vfolder_hash, rule->name, &key, &folder)) {
+		g_hash_table_remove (vfolder_hash, key);
+		g_free (key);
 	}
 	UNLOCK();
 
 	camel_store_delete_folder(vfolder_store, rule->name, NULL);
 	/* this must be unref'd after its deleted */
 	if (folder)
-		camel_object_unref(folder);
+		camel_object_unref ((CamelFolder *) folder);
 }
 
 static void
@@ -865,8 +868,8 @@ store_folder_renamed(CamelObject *o, voi
 	CamelRenameInfo *info = event_data;
 	FilterRule *rule;
 	char *user;
-	char *key;
-	CamelFolder *folder;
+
+	gpointer key, folder;
 	
 	/* This should be more-or-less thread-safe */
 
@@ -875,10 +878,10 @@ store_folder_renamed(CamelObject *o, voi
 	/* Folder is already renamed? */
 	LOCK();
 	d(printf("Changing folder name in hash table to '%s'\n", info->new->full_name));
-	if (g_hash_table_lookup_extended(vfolder_hash, info->old_base, (void **)&key, (void **)&folder)) {
-		g_hash_table_remove(vfolder_hash, key);
-		g_free(key);
-		g_hash_table_insert(vfolder_hash, g_strdup(info->new->full_name), folder);
+	if (g_hash_table_lookup_extended (vfolder_hash, info->old_base, &key, &folder)) {
+		g_hash_table_remove (vfolder_hash, key);
+		g_free (key);
+		g_hash_table_insert (vfolder_hash, g_strdup(info->new->full_name), folder);
 
 		rule = rule_context_find_rule((RuleContext *)context, info->old_base, NULL);
 		if (!rule) {
Index: mail/em-folder-browser.c
===================================================================
--- mail/em-folder-browser.c	(revision 34367)
+++ mail/em-folder-browser.c	(revision 34368)
@@ -111,7 +111,6 @@ struct _EMFolderBrowserPrivate {
 
 	guint search_menu_activated_id;
 	guint search_activated_id;
-	guint search_query_changed_id;
 
 	double default_scroll_position;
 	guint idle_scroll_id;
@@ -142,7 +141,6 @@ static void emfb_set_search_folder(EMFol
 static void emfb_search_config_search(EFilterBar *efb, FilterRule *rule, int id, const char *query, void *data);
 static void emfb_search_menu_activated(ESearchBar *esb, int id, EMFolderBrowser *emfb);
 static void emfb_search_search_activated(ESearchBar *esb, EMFolderBrowser *emfb);
-static void emfb_search_query_changed(ESearchBar *esb, EMFolderBrowser *emfb);
 static void emfb_search_search_cleared(ESearchBar *esb);
 
 static int emfb_list_key_press(ETree *tree, int row, ETreePath path, int col, GdkEvent *ev, EMFolderBrowser *emfb);
@@ -471,7 +469,6 @@ emfb_init(GObject *o)
 
 		p->search_menu_activated_id = g_signal_connect(emfb->search, "menu_activated", G_CALLBACK(emfb_search_menu_activated), emfb);
 		p->search_activated_id = g_signal_connect(emfb->search, "search_activated", G_CALLBACK(emfb_search_search_activated), emfb);
-/* 		p->search_query_changed_id = g_signal_connect(emfb->search, "query_changed", G_CALLBACK(emfb_search_query_changed), emfb); */
 		g_signal_connect(emfb->search, "search_cleared", G_CALLBACK(emfb_search_search_cleared), NULL);
 		
 		gtk_box_pack_start((GtkBox *)emfb, (GtkWidget *)emfb->search, FALSE, TRUE, 0);
@@ -1148,29 +1145,6 @@ emfb_search_search_activated(ESearchBar 
 }
 
 static void
-emfb_search_query_changed(ESearchBar *esb, EMFolderBrowser *emfb)
-{
-	int search_scope;
-	int item_id;
-
-	search_scope = e_search_bar_get_search_scope (esb);
-	item_id = e_search_bar_get_item_id (esb);
-
-	/* Close the current message search bar */
-	if ( search_scope != E_FILTERBAR_CURRENT_MESSAGE_ID ) {
-		em_format_html_display_search_close (emfb->view.preview);
-		gtk_widget_set_sensitive (esb->option_button, TRUE);
-	} else
-		gtk_widget_set_sensitive (esb->option_button, FALSE);
-	
-	switch (item_id) {
-	    case E_FILTERBAR_ADVANCED_ID:
-		    emfb_search_search_activated(esb, emfb);
-		    break;
-	}
-}
-
-static void
 emfb_search_search_cleared(ESearchBar *esb)
 {
 	/* FIXME: It should just cancel search.*/
Index: mail/ChangeLog
===================================================================
--- mail/ChangeLog	(revision 34367)
+++ mail/ChangeLog	(revision 34368)
@@ -1,3 +1,20 @@
+2007-10-09  Matthew Barnes  <mbarnes@redhat.com>
+
+	** Fixes part of bug #437579
+
+	* e-searching-tokenizer.c:
+	* em-folder-browser.c:
+	* em-format-html.c:
+	* em-format-view.c:
+	* em-format.c:
+	* em-mailer-prefs.c:
+	* em-mailer-prefs.h:
+	* mail-session.c:
+	* mail-session.h:
+	* mail-vfolder.c:
+	* message-list.c:
+	Fix various compiler warnings.  Patch from Milan Crha.
+
 2007-10-09  Tobias Mueller  <muelli@auftrags-killer.org>
 
 	** Fix for bug #482575
Index: mail/em-format.c
===================================================================
--- mail/em-format.c	(revision 34367)
+++ mail/em-format.c	(revision 34368)
@@ -366,7 +366,7 @@ em_format_add_puri(EMFormat *emf, size_t
 	d(printf("adding puri for part: %s\n", emf->part_id->str));
 
 	if (size < sizeof(*puri)) {
-		g_warning ("size (%ld) less than size of puri\n", size);
+		g_warning ("size (%d) less than size of puri\n", size);
 		size = sizeof (*puri);
 	}
 
Index: mail/em-folder-view.c
===================================================================
--- mail/em-folder-view.c	(revision 34367)
+++ mail/em-folder-view.c	(revision 34368)
@@ -2408,7 +2408,7 @@ emfv_message_selected_timeout(void *data
 
 	if (emfv->priv->selected_uid) {
 		if (emfv->displayed_uid == NULL || strcmp(emfv->displayed_uid, emfv->priv->selected_uid) != 0) {
-			GtkHTMLStream *hstream;
+			/*GtkHTMLStream *hstream;*/
 
 			g_free(emfv->displayed_uid);
 			emfv->displayed_uid = emfv->priv->selected_uid;
Index: mail/em-format-html.c
===================================================================
--- mail/em-format-html.c	(revision 34367)
+++ mail/em-format-html.c	(revision 34368)
@@ -1512,12 +1512,6 @@ static char *addrspec_hdrs[] = {
 	"resent-to", "resent-cc", "resent-bcc", NULL
 };
 
-/* FIXME: include Sender and Resent-* headers too? */
-/* For Translators only: The following strings are used in the header table in the preview pane */
-static char *i18n_hdrs[] = {
-	N_("From"), N_("Reply-To"), N_("To"), N_("Cc"), N_("Bcc")
-};
-
 static gchar *
 efh_format_address (EMFormatHTML *efh, GString *out, struct _camel_header_address *a, gchar *field)
 {
Index: mail/mail-session.c
===================================================================
--- mail/mail-session.c	(revision 34367)
+++ mail/mail-session.c	(revision 34368)
@@ -745,7 +745,7 @@ mail_session_add_junk_plugin (const char
 }
 
 const GList *
-mail_session_get_junk_plugins ()
+mail_session_get_junk_plugins (void)
 {
 	MailSession *ms = (MailSession *) session;	
 	return ms->junk_plugins;
Index: mail/mail-session.h
===================================================================
--- mail/mail-session.h	(revision 34367)
+++ mail/mail-session.h	(revision 34368)
@@ -51,7 +51,7 @@ void mail_session_flush_filter_log (void
 
 void mail_session_add_junk_plugin (const char *plugin_name, CamelJunkPlugin *junk_plugin);
 
-const GList * mail_session_get_junk_plugins ();
+const GList * mail_session_get_junk_plugins (void);
 	
 extern CamelSession *session;
 
Index: mail/em-mailer-prefs.c
===================================================================
--- mail/em-mailer-prefs.c	(revision 34367)
+++ mail/em-mailer-prefs.c	(revision 34368)
@@ -865,7 +865,7 @@ junk_plugin_setup (GtkWidget *combo, EMM
 }
 
 GtkWidget *
-create_combo_text_widget () {
+create_combo_text_widget (void) {
 	return gtk_combo_box_new_text ();
 }
 	
Index: mail/em-mailer-prefs.h
===================================================================
--- mail/em-mailer-prefs.h	(revision 34367)
+++ mail/em-mailer-prefs.h	(revision 34368)
@@ -142,7 +142,7 @@ struct _EMMailerPrefsClass {
 };
 
 GtkType em_mailer_prefs_get_type (void);
-GtkWidget * create_combo_text_widget ();
+GtkWidget * create_combo_text_widget (void);
 
 struct _GtkWidget *em_mailer_prefs_new (void);
 
Index: mail/e-searching-tokenizer.c
===================================================================
--- mail/e-searching-tokenizer.c	(revision 34367)
+++ mail/e-searching-tokenizer.c	(revision 34368)
@@ -162,7 +162,7 @@ loop:
 static char *ignored_tags[] = { "B", "I", "FONT", "TT", "EM", /* and more? */};
 
 static int
-ignore_tag(const char *tag)
+ignore_tag (const char *tag)
 {
 	char *t = alloca(strlen(tag)+1), c, *out;
 	const char *in;
@@ -260,10 +260,10 @@ g(struct _state *q, guint32 c)
 }
 
 static struct _trie *
-build_trie(int nocase, int len, char **words)
+build_trie(int nocase, int len, unsigned char **words)
 {
 	struct _state *q, *qt, *r;
-	char *word;
+	const unsigned char *word;
 	struct _match *m, *n = NULL;
 	int i, depth;
 	guint32 c;
@@ -294,7 +294,7 @@ build_trie(int nocase, int len, char **w
 		word = words[i];
 		q = &trie->root;
 		depth = 0;
-		while ((c = camel_utf8_getc((const unsigned char **)&word))) {
+		while ((c = camel_utf8_getc (&word))) {
 			if (nocase)
 				c = g_unichar_tolower(c);
 			m = g(q, c);
@@ -439,7 +439,7 @@ searcher_set_tokenfunc(struct _searcher 
 }
 
 static struct _searcher *
-searcher_new(int flags, int argc, char **argv, const char *tags, const char *tage)
+searcher_new (int flags, int argc, unsigned char **argv, const char *tags, const char *tage)
 {
 	int i, m;
 	struct _searcher *s;
@@ -717,7 +717,7 @@ static char *
 searcher_next_token(struct _searcher *s)
 {
 	struct _token *token;
-	char *tok, *stok, *pre_tok;
+	const unsigned char *tok, *stok, *pre_tok;
 	struct _trie *t = s->t;
 	struct _state *q = s->state;
 	struct _match *m = NULL;
@@ -726,7 +726,7 @@ searcher_next_token(struct _searcher *s)
 
 	while (e_dlist_empty(&s->output)) {
 		/* get next token */
-		tok = s->next_token(s->next_data);
+		tok = (unsigned char *)s->next_token(s->next_data);
 		if (tok == NULL) {
 			output_subpending(s);
 			output_pending(s);
@@ -734,15 +734,15 @@ searcher_next_token(struct _searcher *s)
 		}
 
 		/* we dont always have to copy each token, e.g. if we dont match anything */
-		token = append_token(&s->input, tok, -1);
+		token = append_token(&s->input, (char *)tok, -1);
 		token->offset = s->offset;
-		tok = token->tok;
+		tok = (unsigned char *)token->tok;
 
 		d(printf("new token %d '%s'\n", token->offset, token->tok[0]==TAG_ESCAPE?token->tok+1:token->tok));
 
 		/* tag test, reset state on unknown tags */
 		if (tok[0] == TAG_ESCAPE) {
-			if (!ignore_tag(tok)) {
+			if (!ignore_tag ((char *)tok)) {
 				/* force reset */
 				output_subpending(s);
 				output_pending(s);
@@ -754,7 +754,7 @@ searcher_next_token(struct _searcher *s)
 
 		/* process whole token */
 		pre_tok = stok = tok;
-		while ((c = camel_utf8_getc((const unsigned char **)&tok))) {
+		while ((c = camel_utf8_getc (&tok))) {
 			if ((s->flags & SEARCH_CASE) == 0)
 				c = g_unichar_tolower(c);
 			while (q && (m = g(q, c)) == NULL)
@@ -876,21 +876,22 @@ search_info_set_colour(struct _search_in
 static void
 search_info_add_string(struct _search_info *si, const char *s)
 {
-	const char *start;
+	const unsigned char *start;
 	guint32 c;
 
 	if (s && s[0]) {
+		const unsigned char *us = (unsigned char *) s;
 		/* strip leading whitespace */
-		start = s;
-		while ((c = camel_utf8_getc((const unsigned char **)&s))) {
-			if (!g_unichar_isspace(c)) {
+		start = us;
+		while ((c = camel_utf8_getc (&us))) {
+			if (!g_unichar_isspace (c)) {
 				break;
 			}
-			start = s;
+			start = us;
 		}
 		/* should probably also strip trailing, but i'm lazy today */
 		if (start[0])
-			g_ptr_array_add(si->strv, g_strdup(start));
+			g_ptr_array_add(si->strv, g_strdup ((char *)start));
 	}
 }
 
@@ -953,7 +954,7 @@ search_info_to_searcher(struct _search_i
 	tage = alloca(20);
 	sprintf(tage, "%c</font>", TAG_ESCAPE);
 
-	return searcher_new(si->flags, si->strv->len, (char **)si->strv->pdata, tags, tage);
+	return searcher_new (si->flags, si->strv->len, (unsigned char **)si->strv->pdata, tags, tage);
 }
 
 /* ********************************************************************** */
Index: mail/message-list.c
===================================================================
--- mail/message-list.c	(revision 34367)
+++ mail/message-list.c	(revision 34368)
@@ -2752,11 +2752,10 @@ build_subtree_diff(MessageList *ml, ETre
 			/* matching nodes, verify details/children */
 #if 0
 			if (bp->message) {
-				char *olduid;
-				int oldrow;
+				gpointer olduid, oldrow;
 				/* if this is a message row, check/update the row id map */
-				if (g_hash_table_lookup_extended(ml->uid_rowmap, camel_message_info_uid(bp->message), (void *)&olduid, (void *)&oldrow)) {
-					if (oldrow != (*row)) {
+				if (g_hash_table_lookup_extended(ml->uid_rowmap, camel_message_info_uid(bp->message), &olduid, &oldrow)) {
+					if ((int)oldrow != (*row)) {
 						g_hash_table_insert(ml->uid_rowmap, olduid, (void *)(*row));
 					}
 				} else {
Index: filter/filter-file.c
===================================================================
--- filter/filter-file.c	(revision 34367)
+++ filter/filter-file.c	(revision 34368)
@@ -284,7 +284,6 @@ get_widget (FilterElement *fe)
 {
 	FilterFile *file = (FilterFile *) fe;
 	GtkWidget *filewidget;
-	GtkWidget *entry;
 
 	filewidget = (GtkWidget *) gtk_file_chooser_button_new (_("Choose a file"), GTK_FILE_CHOOSER_ACTION_OPEN);
 	gtk_file_chooser_set_filename (GTK_FILE_CHOOSER (filewidget), file->path);
Index: filter/ChangeLog
===================================================================
--- filter/ChangeLog	(revision 34367)
+++ filter/ChangeLog	(revision 34368)
@@ -1,3 +1,10 @@
+2007-10-09  Matthew Barnes  <mbarnes@redhat.com>
+
+	** Fixes part of bug #437579
+
+	* filter-file.c:
+	Fix various compiler warnings.  Patch from Milan Crha.
+
 2007-09-27  Hiroyuki Ikezoe  <poincare@ikezoe.net>
 
 	** Fix for bug #461195
Index: ChangeLog
===================================================================
--- ChangeLog	(revision 34367)
+++ ChangeLog	(revision 34368)
@@ -1,5 +1,12 @@
 2007-10-09  Matthew Barnes  <mbarnes@redhat.com>
 
+	** Fixes part of bug #437579
+
+	* tools/killev.c:
+	Fix various compiler warnings.  Patch from Milan Crha.
+
+2007-10-09  Matthew Barnes  <mbarnes@redhat.com>
+
 	* iconv-detect.c (main): Remove an unused variable (#483301).
 
 2007-10-08  Matthew Barnes  <mbarnes@redhat.com>
Index: e-util/e-plugin.c
===================================================================
--- e-util/e-plugin.c	(revision 34367)
+++ e-util/e-plugin.c	(revision 34368)
@@ -187,21 +187,20 @@ ep_construct(EPlugin *ep, xmlNodePtr roo
 					ep->hooks = g_slist_append(ep->hooks, hook);
 				}
 			} else {
-				GSList *l;
-				char *oldclass;
+				gpointer l, oldclass;
 
 				if (ep_plugins_pending_hooks == NULL)
 					ep_plugins_pending_hooks = g_hash_table_new(g_str_hash, g_str_equal);
-				if (!g_hash_table_lookup_extended(ep_plugins_pending_hooks, class, (void **)&oldclass, (void **)&l)) {
+				if (!g_hash_table_lookup_extended (ep_plugins_pending_hooks, class, &oldclass, &l)) {
 					oldclass = class;
 					l = NULL;
 				}
 				else {
 					g_free(class);
 				}
-				l = g_slist_prepend(l, ep);
-				g_hash_table_insert(ep_plugins_pending_hooks, oldclass, l);
-				ep->hooks_pending = g_slist_prepend(ep->hooks_pending, node);
+				l = g_slist_prepend (l, ep);
+				g_hash_table_insert (ep_plugins_pending_hooks, oldclass, l);
+				ep->hooks_pending = g_slist_prepend (ep->hooks_pending, node);
 			}
 		} else if (strcmp((char *)node->name, "description") == 0) {
 			ep->description = e_plugin_xml_content_domain(node, ep->domain);
@@ -1110,8 +1109,10 @@ void
 e_plugin_hook_register_type(GType type)
 {
 	EPluginHookClass *klass, *oldklass;
-	GSList *l, *plugins;
-	char *class;
+	GSList *l;
+
+	gpointer plugins; /* GSList */
+	gpointer class;
 
 	if (eph_types == NULL)
 		eph_types = g_hash_table_new(g_str_hash, g_str_equal);
@@ -1133,17 +1134,17 @@ e_plugin_hook_register_type(GType type)
 	/* if we've already loaded a plugin that needed this hook but it didn't exist, re-load it now */
 
 	if (ep_plugins_pending_hooks
-	    && g_hash_table_lookup_extended(ep_plugins_pending_hooks, klass->id, (void **)&class, (void **)&plugins)) {
+	    && g_hash_table_lookup_extended (ep_plugins_pending_hooks, klass->id, &class, &plugins)) {
 		struct _plugin_doc *pdoc, *ndoc;
 
-		g_hash_table_remove(ep_plugins_pending_hooks, class);
-		g_free(class);
+		g_hash_table_remove (ep_plugins_pending_hooks, class);
+		g_free (class);
 		for (l = plugins; l; l = g_slist_next(l)) {
 			EPlugin *ep = l->data;
 
-			ep_load_pending(ep, klass);
+			ep_load_pending (ep, klass);
 		}
-		g_slist_free(plugins);
+		g_slist_free (plugins);
 
 		/* See if we can now garbage collect the xml definition since its been fully loaded */
 
Index: e-util/e-pilot-map.c
===================================================================
--- e-util/e-pilot-map.c	(revision 34367)
+++ e-util/e-pilot-map.c	(revision 34368)
@@ -206,39 +206,23 @@ e_pilot_map_uid_is_archived (EPilotMap *
 void 
 e_pilot_map_insert (EPilotMap *map, guint32 pid, const char *uid, gboolean archived)
 {
-	gpointer key, value;
-	
-	if (g_hash_table_lookup_extended (map->pid_map, &pid, &key, &value)) {
-		EPilotMapPidNode *pnode = value;
-		gpointer other_key, other_value;
-
-		g_hash_table_remove (map->pid_map, &pid);
+        EPilotMapPidNode *pnode;
+        EPilotMapUidNode *unode;
 
+        pnode = g_hash_table_lookup (map->pid_map, &pid);
+        if (pnode != NULL) {
 		/* In case the pid<->uid mapping is not the same anymore */
-		if (g_hash_table_lookup_extended (map->uid_map, pnode->uid, &other_key, &other_value)) {
-			g_hash_table_remove (map->uid_map, pnode->uid);
-			g_free (other_key);
-			g_free (other_value);
-		}
+                g_hash_table_remove (map->uid_map, pnode->uid);
 
-		g_free (key);
-		g_free (value);
+		g_hash_table_remove (map->pid_map, &pid);
 	}
-	if (g_hash_table_lookup_extended (map->uid_map, uid, &key, &value)) {
-		EPilotMapUidNode *unode = value;
-		gpointer other_key, other_value;
-
-		g_hash_table_remove (map->uid_map, uid);
 
+        unode = g_hash_table_lookup (map->uid_map, uid);
+        if (unode != NULL) {
 		/* In case the pid<->uid mapping is not the same anymore */
-		if (g_hash_table_lookup_extended (map->pid_map, &unode->pid, &other_key, &other_value)) {
-			g_hash_table_remove (map->pid_map, &unode->pid);
-			g_free (other_key);
-			g_free (other_value);
-		}
+                g_hash_table_remove (map->pid_map, &unode->pid);
 
-		g_free (key);
-		g_free (value);
+		g_hash_table_remove (map->uid_map, uid);
 	}
 
 	real_e_pilot_map_insert (map, pid, uid, archived, TRUE);
@@ -247,54 +231,39 @@ e_pilot_map_insert (EPilotMap *map, guin
 void 
 e_pilot_map_remove_by_pid (EPilotMap *map, guint32 pid)
 {
-	EPilotMapPidNode *pnode = NULL;
-	EPilotMapUidNode *unode = NULL;
-	gpointer pkey, ukey;
-	
+	EPilotMapPidNode *pnode;
+	EPilotMapUidNode *unode;
+
 	g_return_if_fail (map != NULL);
 
-	if (!g_hash_table_lookup_extended (map->pid_map, &pid, 
-					   &pkey, (gpointer *)&pnode))
+        pnode = g_hash_table_lookup (map->pid_map, &pid);
+        if (pnode == NULL)
 		return;
-	
-	g_hash_table_lookup_extended (map->uid_map, pnode->uid, &ukey,
-				      (gpointer *)&unode);
+
+        unode = g_hash_table_lookup (map->uid_map, pnode->uid);
 	g_return_if_fail (unode != NULL);
-	
-	g_hash_table_remove (map->pid_map, &pid);
-	g_hash_table_remove (map->uid_map, pnode->uid);
 
-	g_free (pkey);
-	g_free (ukey);
-	g_free (pnode);
-	g_free (unode);
+	g_hash_table_remove (map->uid_map, pnode->uid);
+	g_hash_table_remove (map->pid_map, &pid);
 }
 
 void 
 e_pilot_map_remove_by_uid (EPilotMap *map, const char *uid)
 {
-	EPilotMapPidNode *pnode = NULL;
-	EPilotMapUidNode *unode = NULL;
-	gpointer pkey, ukey;
-	
+	EPilotMapPidNode *pnode;
+	EPilotMapUidNode *unode;
+
 	g_return_if_fail (map != NULL);
 	g_return_if_fail (uid != NULL);
 
-	if (!g_hash_table_lookup_extended (map->uid_map, uid, &ukey, (gpointer *)&unode))
+        unode = g_hash_table_lookup (map->uid_map, uid);
+        if (unode == NULL)
 		return;
 
-	g_hash_table_lookup_extended (map->pid_map, &unode->pid, &pkey, (gpointer *)&pnode);
+        pnode = g_hash_table_lookup (map->pid_map, &unode->pid);
 
-	g_hash_table_remove (map->uid_map, uid);
 	g_hash_table_remove (map->pid_map, &unode->pid);
-
-	if (unode->pid != 0)
-		g_free (pkey);
-	g_free (ukey);
-
-	if (unode->pid != 0)
-		g_free (pnode);
-	g_free (unode);
+	g_hash_table_remove (map->uid_map, uid);
 }
 
 
@@ -363,8 +332,14 @@ e_pilot_map_read (const char *filename, 
 	memset (&handler, 0, sizeof (xmlSAXHandler));
 	handler.startElement = map_sax_start_element;
 
-	new_map->pid_map = g_hash_table_new (g_int_hash, g_int_equal);
-	new_map->uid_map = g_hash_table_new (g_str_hash, g_str_equal);
+	new_map->pid_map = g_hash_table_new_full (
+                g_int_hash, g_int_equal,
+                (GDestroyNotify) g_free,
+                (GDestroyNotify) g_free);
+	new_map->uid_map = g_hash_table_new_full (
+                g_str_hash, g_str_equal,
+                (GDestroyNotify) g_free,
+                (GDestroyNotify) g_free);
 
 	if (g_file_test (filename, G_FILE_TEST_EXISTS)) {
 		if (xmlSAXUserParseFile (&handler, new_map, filename) < 0) {
@@ -416,22 +391,13 @@ e_pilot_map_write (const char *filename,
 	return 0;
 }
 
-static gboolean
-foreach_remove (gpointer key, gpointer value, gpointer data)
-{
-	g_free (key);
-	g_free (value);
-
-	return TRUE;
-}
-
 void
 e_pilot_map_clear (EPilotMap *map)
 {
 	g_return_if_fail (map != NULL);
 
-	g_hash_table_foreach_remove (map->pid_map, foreach_remove, NULL);
-	g_hash_table_foreach_remove (map->uid_map, foreach_remove, NULL);
+        g_hash_table_remove_all (map->pid_map);
+        g_hash_table_remove_all (map->uid_map);
 
 	map->since = 0;
 	map->write_touched_only = FALSE;
@@ -442,9 +408,6 @@ e_pilot_map_destroy (EPilotMap *map)
 {
 	g_return_if_fail (map != NULL);
 
-	g_hash_table_foreach_remove (map->pid_map, foreach_remove, NULL);
-	g_hash_table_foreach_remove (map->uid_map, foreach_remove, NULL);
-	
 	g_hash_table_destroy (map->pid_map);
 	g_hash_table_destroy (map->uid_map);
 	g_free (map);
Index: e-util/ChangeLog
===================================================================
--- e-util/ChangeLog	(revision 34367)
+++ e-util/ChangeLog	(revision 34368)
@@ -1,3 +1,13 @@
+2007-10-09  Matthew Barnes  <mbarnes@redhat.com>
+
+	** Fixes part of bug #437579
+
+	* e-plugin.c:
+	* e-pilot-map.c:
+	* e-profile-event.c:
+	* e-signature.c:
+	Fix various compiler warnings.  Patch from Milan Crha.
+
 2007-10-02  Matthew Barnes  <mbarnes@redhat.com>
 
 	** Fixes part of bug #469657
Index: e-util/e-profile-event.c
===================================================================
--- e-util/e-profile-event.c	(revision 34367)
+++ e-util/e-profile-event.c	(revision 34368)
@@ -125,7 +125,7 @@ e_profile_event_target_new(EProfileEvent
 }
 
 #ifdef ENABLE_PROFILING
-void
+static void
 e_profile_event_emit(const char *id, const char *uid, guint32 flags)
 {
 	EProfileEvent *epe = e_profile_event_peek();
@@ -134,11 +134,12 @@ e_profile_event_emit(const char *id, con
 	e_event_emit((EEvent *)epe, "event", (EEventTarget *)t);
 }
 #else
+/* simply keep macro from header file expand to "nothing".
 #undef e_profile_event_emit
-void
+static void
 e_profile_event_emit(const char *id, const char *uid, guint32 flags)
 {
-}
+}*/
 #endif
 
 /* ********************************************************************** */
Index: e-util/e-signature.c
===================================================================
--- e-util/e-signature.c	(revision 34367)
+++ e-util/e-signature.c	(revision 34368)
@@ -325,7 +325,8 @@ e_signature_set_from_xml (ESignature *si
 char *
 e_signature_to_xml (ESignature *signature)
 {
-	char *xmlbuf, *tmp;
+	xmlChar *xmlbuf;
+	char *tmp;
 	xmlNodePtr root, node;
 	xmlDocPtr doc;
 	int n;
@@ -352,7 +353,7 @@ e_signature_to_xml (ESignature *signatur
 		xmlSetProp (root, (const unsigned char *)"format", (const unsigned char *)"text/html");
 	}
 	
-	xmlDocDumpMemory (doc, (xmlChar **)&xmlbuf, &n);
+	xmlDocDumpMemory (doc, &xmlbuf, &n);
 	xmlFreeDoc (doc);
 	
 	/* remap to glib memory */
Index: widgets/text/e-text.c
===================================================================
--- widgets/text/e-text.c	(revision 34367)
+++ widgets/text/e-text.c	(revision 34368)
@@ -620,7 +620,7 @@ calc_height (EText *text)
 static void
 calc_ellipsis (EText *text)
 {
-#warning "AIEEEE FIX ME.  a pango layout per calc_ellipsis sucks"
+/* FIXME: a pango layout per calc_ellipsis sucks */
 	int width;
 	PangoLayout *layout = gtk_widget_create_pango_layout (GTK_WIDGET (GNOME_CANVAS_ITEM (text)->canvas),
 							      text->ellipsis ? text->ellipsis : "...");
@@ -1247,9 +1247,7 @@ e_text_realize (GnomeCanvasItem *item)
 	create_layout (text);
 
 	text->gc = gdk_gc_new (item->canvas->layout.bin_window);
-#ifndef NO_WARNINGS
-#warning Color brokenness ...
-#endif
+/* FIXME: Color brokenness ... */
 #if 0
 	gdk_color_context_query_color (item->canvas->cc, &text->color);
 	gdk_gc_set_foreground (text->gc, &text->color);
@@ -1936,7 +1934,7 @@ tooltip_destroy(gpointer data, GObject *
 static gboolean
 _do_tooltip (gpointer data)
 {
-#warning "need to sort out tooltip stuff."
+/* FIXME: need to sort out tooltip stuff. */
 	EText *text = E_TEXT (data);
 	GtkWidget *canvas;
 	int i;
Index: widgets/ChangeLog
===================================================================
--- widgets/ChangeLog	(revision 34367)
+++ widgets/ChangeLog	(revision 34368)
@@ -1,3 +1,10 @@
+2007-10-09  Matthew Barnes  <mbarnes@redhat.com>
+
+	** Fixes part of bug #437579
+
+	* text/e-text.c:
+	Fix various compiler warnings.  Patch from Milan Crha.
+
 2007-09-27  Hiroyuki Ikezoe  <poincare@ikezoe.net>
 
 	** Fix for bug #461195
Index: widgets/table/e-table-header-item.c
===================================================================
--- widgets/table/e-table-header-item.c	(revision 34367)
+++ widgets/table/e-table-header-item.c	(revision 34368)
@@ -142,10 +142,8 @@ ethi_dispose (GObject *object){
 		g_object_unref (ethi->full_header);
 	ethi->full_header = NULL;
 
-	
 	if (ethi->etfcd)
-		g_object_remove_weak_pointer (G_OBJECT (ethi->etfcd), (gpointer *) (void *) &ethi->etfcd);
-	
+		g_object_remove_weak_pointer (G_OBJECT (ethi->etfcd), &ethi->etfcd_pointer);
 
 	if (ethi->config)
 		g_object_unref (ethi->config);
@@ -220,9 +218,7 @@ ethi_update (GnomeCanvasItem *item, doub
 			item->y1 = c1.y;
 			item->x2 = c2.x;
 			item->y2 = c2.y;
-#ifndef NO_WARNINGS
-#warning FOO BAA
-#endif
+/* FIXME: Group Child bounds !? (FOO BAA) */
 #if 0
 			gnome_canvas_group_child_bounds (GNOME_CANVAS_GROUP (item->parent), item);
 #endif
@@ -956,7 +952,7 @@ ethi_draw (GnomeCanvasItem *item, GdkDra
 		for (i = 0; i < length; i++) {
 			ETableSortColumn column = e_table_sort_info_grouping_get_nth(ethi->sort_info, i);
 			g_hash_table_insert (arrows, 
-					     GINT_TO_POINTER (column.column),
+					     GINT_TO_POINTER ((gint) column.column),
 					     GINT_TO_POINTER (column.ascending ?
 							      E_TABLE_COL_ARROW_DOWN : 
 							      E_TABLE_COL_ARROW_UP));
@@ -965,7 +961,7 @@ ethi_draw (GnomeCanvasItem *item, GdkDra
 		for (i = 0; i < length; i++) {
 			ETableSortColumn column = e_table_sort_info_sorting_get_nth(ethi->sort_info, i);
 			g_hash_table_insert (arrows, 
-					     GINT_TO_POINTER (column.column),
+					     GINT_TO_POINTER ((gint) column.column),
 					     GINT_TO_POINTER (column.ascending ?
 							      E_TABLE_COL_ARROW_DOWN : 
 							      E_TABLE_COL_ARROW_UP));
@@ -1154,7 +1150,7 @@ ethi_start_drag (ETableHeaderItem *ethi,
 			group_indent ++;
 			g_hash_table_insert (
 				arrows, 
-				GINT_TO_POINTER (column.column),
+				GINT_TO_POINTER ((gint) column.column),
 				GINT_TO_POINTER (column.ascending ?
 						 E_TABLE_COL_ARROW_DOWN : 
 						 E_TABLE_COL_ARROW_UP));
@@ -1167,7 +1163,7 @@ ethi_start_drag (ETableHeaderItem *ethi,
 
 			g_hash_table_insert (
 				arrows, 
-				GINT_TO_POINTER (column.column),
+				GINT_TO_POINTER ((gint) column.column),
 				GINT_TO_POINTER (column.ascending ?
 						 E_TABLE_COL_ARROW_DOWN : 
 						 E_TABLE_COL_ARROW_UP));
@@ -1363,7 +1359,7 @@ ethi_popup_remove_column(GtkWidget *widg
 static void
 ethi_popup_field_chooser(GtkWidget *widget, EthiHeaderInfo *info)
 {
-	gpointer etfcd = (gpointer)info->ethi->etfcd;
+	GtkWidget *etfcd = info->ethi->etfcd;
 
 	if (etfcd) {
 		gtk_window_present (GTK_WINDOW (etfcd));
@@ -1372,9 +1368,8 @@ ethi_popup_field_chooser(GtkWidget *widg
 	}
 	
 	info->ethi->etfcd = e_table_field_chooser_dialog_new ();
-	etfcd = (gpointer)info->ethi->etfcd;
 
-	g_object_add_weak_pointer (G_OBJECT (etfcd), (gpointer*) (void *) &info->ethi->etfcd);
+	g_object_add_weak_pointer (G_OBJECT (etfcd), &info->ethi->etfcd_pointer);
 	
 	g_object_set (info->ethi->etfcd,
 		     "full_header", info->ethi->full_header,
Index: widgets/table/e-table-header-item.h
===================================================================
--- widgets/table/e-table-header-item.h	(revision 34367)
+++ widgets/table/e-table-header-item.h	(revision 34368)
@@ -95,9 +95,13 @@ typedef struct {
 	ETableHeader    *full_header;
 	ETable          *table;
 	ETree           *tree;
-	GtkWidget       *etfcd;
 	void            *config;
 
+	union {
+		GtkWidget *etfcd;
+		gpointer etfcd_pointer;
+	};
+
 	/* For keyboard navigation*/
 	int selected_col;
 
Index: widgets/table/ChangeLog
===================================================================
--- widgets/table/ChangeLog	(revision 34367)
+++ widgets/table/ChangeLog	(revision 34368)
@@ -1,3 +1,14 @@
+2007-10-09  Matthew Barnes  <mbarnes@redhat.com>
+
+	** Fixes part of bug #437579
+
+	* e-table-field-chooser-item.c:
+	* e-table-header-item.c:
+	* e-table-header-item.h:
+	* e-table-header-utils.c:
+	* e-table.c:
+	Fix various compiler warnings.  Patch from Milan Crha.
+
 2007-10-02  Matthew Barnes  <mbarnes@redhat.com>
 
 	** Fixes part of bug #469657
Index: widgets/table/e-table-field-chooser-item.c
===================================================================
--- widgets/table/e-table-field-chooser-item.c	(revision 34367)
+++ widgets/table/e-table-field-chooser-item.c	(revision 34368)
@@ -206,9 +206,7 @@ etfci_update (GnomeCanvasItem *item, dou
 			item->y1 = c1.y;
 			item->x2 = c2.x;
 			item->y2 = c2.y;
-#ifndef NO_WARNINGS
-#warning Group Child bounds !?
-#endif
+/* FIXME: Group Child bounds !? */
 #if 0
 			gnome_canvas_group_child_bounds (GNOME_CANVAS_GROUP (item->parent), item);
 #endif
Index: widgets/table/e-table-header-utils.c
===================================================================
--- widgets/table/e-table-header-utils.c	(revision 34367)
+++ widgets/table/e-table-header-utils.c	(revision 34368)
@@ -333,7 +333,7 @@ e_table_header_draw_button (GdkDrawable 
 	int inner_width, inner_height;
 	GdkGC *gc;
 	PangoLayout *layout;
-	static GtkWidget *g_label = NULL;
+	static gpointer g_label = NULL;
 
 	g_return_if_fail (drawable != NULL);
 	g_return_if_fail (ecol != NULL);
@@ -350,11 +350,11 @@ e_table_header_draw_button (GdkDrawable 
 		gtk_widget_ensure_style (window);
 		gtk_widget_ensure_style (button);
 		g_label = GTK_BIN(button)->child;
-		g_object_add_weak_pointer (G_OBJECT (g_label), (gpointer *) &g_label);
+		g_object_add_weak_pointer (G_OBJECT (g_label), &g_label);
 		gtk_widget_ensure_style (g_label);
 	}
 
-	gc = g_label->style->fg_gc[state];
+	gc = GTK_WIDGET (g_label)->style->fg_gc[state];
 
 	gdk_gc_set_clip_rectangle (gc, NULL);
 
Index: widgets/table/e-table.c
===================================================================
--- widgets/table/e-table.c	(revision 34367)
+++ widgets/table/e-table.c	(revision 34368)
@@ -2926,9 +2926,7 @@ context_destroyed (gpointer data)
 {
 	ETable *et = data;
 	/* if (!GTK_OBJECT_DESTROYED (et)) */
-#ifndef NO_WARNINGS
-#warning FIXME
-#endif
+/* FIXME: */
 	{
 		et->last_drop_x       = 0;
 		et->last_drop_y       = 0;
Index: widgets/misc/e-cursors.c
===================================================================
--- widgets/misc/e-cursors.c	(revision 34367)
+++ widgets/misc/e-cursors.c	(revision 34368)
@@ -115,7 +115,7 @@ e_cursors_init (void)
 	e_color_init ();
 
 	for (i = 0; cursors [i].hot_x; i++){
-		GdkBitmap *bitmap, *mask;
+		GdkBitmap *bitmap = NULL, *mask = NULL;
 
 		if (cursors [i].hot_x < 0)
 			cursors [i].cursor = gdk_cursor_new (cursors [i].hot_y);
Index: widgets/misc/e-spinner.c
===================================================================
--- widgets/misc/e-spinner.c	(revision 34367)
+++ widgets/misc/e-spinner.c	(revision 34368)
@@ -101,6 +101,7 @@ static void e_spinner_cache_class_init (
 static void e_spinner_cache_init	  (ESpinnerCache *cache);
 
 static GObjectClass *e_spinner_cache_parent_class;
+static gpointer spinner_cache = NULL;
 
 static GType
 e_spinner_cache_get_type (void)
@@ -484,24 +485,17 @@ e_spinner_cache_class_init (ESpinnerCach
 	g_type_class_add_private (object_class, sizeof (ESpinnerCachePrivate));
 }
 
-static ESpinnerCache *spinner_cache = NULL;
-
 static ESpinnerCache *
 e_spinner_cache_ref (void)
 {
-	if (spinner_cache == NULL)
+	if (G_UNLIKELY (spinner_cache == NULL))
 	{
-		ESpinnerCache **cache_ptr;
-
 		spinner_cache = g_object_new (E_TYPE_SPINNER_CACHE, NULL);
-		cache_ptr = &spinner_cache;
-		g_object_add_weak_pointer (G_OBJECT (spinner_cache),
-					   (gpointer *) cache_ptr);
-
-		return spinner_cache;
+		g_object_add_weak_pointer (
+                        G_OBJECT (spinner_cache), &spinner_cache);
 	}
-		
-	return g_object_ref (spinner_cache);
+
+	return g_object_ref_sink (spinner_cache);
 }
 
 /* Spinner implementation */
Index: widgets/misc/ChangeLog
===================================================================
--- widgets/misc/ChangeLog	(revision 34367)
+++ widgets/misc/ChangeLog	(revision 34368)
@@ -1,3 +1,12 @@
+2007-10-09  Matthew Barnes  <mbarnes@redhat.com>
+
+	** Fixes part of bug #437579
+
+	* e-cursors.c:
+	* e-spinner.c:
+	* e-unicode.c:
+	Fix various compiler warnings.  Patch from Milan Crha.
+
 2007-10-01  Milan Crha  <mcrha@redhat.com>
 
 	** Fix for bug #413420
Index: widgets/misc/e-unicode.c
===================================================================
--- widgets/misc/e-unicode.c	(revision 34367)
+++ widgets/misc/e-unicode.c	(revision 34368)
@@ -53,9 +53,7 @@
 static gint e_canonical_decomposition (gunichar ch, gunichar * buf);
 static gunichar e_stripped_char (gunichar ch);
 
-#ifndef NO_WARNINGS
-#warning FIXME: this has not been ported fully yet - non ASCII people beware.
-#endif
+/* FIXME: this has not been ported fully yet - non ASCII people beware. */
 
 /*
  * This my favourite
Index: calendar/gui/dialogs/task-page.c
===================================================================
--- calendar/gui/dialogs/task-page.c	(revision 34367)
+++ calendar/gui/dialogs/task-page.c	(revision 34368)
@@ -1913,7 +1913,7 @@ task_page_select_organizer (TaskPage *tp
 	TaskPagePrivate *priv;
 	GList *l;
 	EAccount *def_account;
-	const char *def_address = NULL;
+	gchar *def_address = NULL;
 	gboolean subscribed_cal = FALSE;
 	ESource *source = NULL;
 	const char *user_addr = NULL;
Index: calendar/gui/dialogs/alarm-dialog.c
===================================================================
--- calendar/gui/dialogs/alarm-dialog.c	(revision 34367)
+++ calendar/gui/dialogs/alarm-dialog.c	(revision 34368)
@@ -624,6 +624,8 @@ populate_widgets_from_alarm (Dialog *dia
 	case E_CAL_COMPONENT_ALARM_TRIGGER_RELATIVE_END:	
 		e_dialog_option_menu_set (dialog->time, E_CAL_COMPONENT_ALARM_TRIGGER_RELATIVE_END, time_map);
 		break;
+        default:
+                g_warning ("%s: Unexpected alarm type (%d)", G_STRLOC, trigger->type);
 	}
 
 	switch ( trigger->u.rel_duration.is_neg ){
@@ -674,6 +676,8 @@ populate_widgets_from_alarm (Dialog *dia
 	case E_CAL_COMPONENT_ALARM_PROCEDURE:
 		alarm_to_palarm_widgets (dialog, dialog->alarm);
 		break;
+        default:
+                g_warning ("%s: Unexpected alarm action (%d)", G_STRLOC, *action);
 	}
 }
 
Index: calendar/gui/dialogs/event-page.c
===================================================================
--- calendar/gui/dialogs/event-page.c	(revision 34367)
+++ calendar/gui/dialogs/event-page.c	(revision 34368)
@@ -3147,7 +3147,7 @@ event_page_select_organizer (EventPage *
 	EventPagePrivate *priv;
 	GList *l;
 	EAccount *def_account;
-	const char *def_address = NULL;
+	gchar *def_address = NULL;
 	gboolean subscribed_cal = FALSE;
 	ESource *source = NULL;
 	const char *user_addr = NULL;
Index: calendar/gui/dialogs/memo-page.c
===================================================================
--- calendar/gui/dialogs/memo-page.c	(revision 34367)
+++ calendar/gui/dialogs/memo-page.c	(revision 34368)
@@ -1112,7 +1112,7 @@ memo_page_select_organizer (MemoPage *mp
 	MemoPagePrivate *priv;
 	GList *l;
 	EAccount *def_account;
-	const char *def_address;
+	gchar *def_address;
 	gboolean subscribed_cal = FALSE;
 	ESource *source = NULL;
 	const char *user_addr = NULL;
Index: calendar/gui/e-day-view-layout.c
===================================================================
--- calendar/gui/e-day-view-layout.c	(revision 34367)
+++ calendar/gui/e-day-view-layout.c	(revision 34368)
@@ -39,15 +39,15 @@ static void e_day_view_layout_long_event
 static void e_day_view_layout_day_event (EDayViewEvent    *event,
 					 guint8	          *grid,
 					 guint16	  *group_starts,
-					 gint8	          *cols_per_row,
+					 guint8	          *cols_per_row,
 					 gint	           rows,
 					 gint	           mins_per_row);
 static void e_day_view_expand_day_event (EDayViewEvent    *event,
 					 guint8	          *grid,
-					 gint8	          *cols_per_row,
+					 guint8	          *cols_per_row,
 					 gint	           mins_per_row);
 static void e_day_view_recalc_cols_per_row (gint           rows,
-					    gint8	  *cols_per_row,
+					    guint8	  *cols_per_row,
 					    guint16       *group_starts);
 
 
@@ -131,7 +131,7 @@ void
 e_day_view_layout_day_events (GArray	   *events,
 			      gint	    rows,
 			      gint	    mins_per_row,
-			      gint8	   *cols_per_row)
+			      guint8	   *cols_per_row)
 {
 	EDayViewEvent *event;
 	gint row, event_num;
@@ -192,7 +192,7 @@ static void
 e_day_view_layout_day_event (EDayViewEvent *event,
 			     guint8	   *grid,
 			     guint16	   *group_starts,
-			     gint8	   *cols_per_row,
+			     guint8	   *cols_per_row,
 			     gint	    rows,
 			     gint	    mins_per_row)
 {
@@ -261,7 +261,7 @@ e_day_view_layout_day_event (EDayViewEve
    rows, and set the number of cols in each of the rows to that. */
 static void
 e_day_view_recalc_cols_per_row (gint      rows,
-				gint8	 *cols_per_row,
+				guint8	 *cols_per_row,
 				guint16  *group_starts)
 {
 	gint start_row = 0, row, next_start_row, max_events;
@@ -285,7 +285,7 @@ e_day_view_recalc_cols_per_row (gint    
 static void
 e_day_view_expand_day_event (EDayViewEvent *event,
 			     guint8	   *grid,
-			     gint8	   *cols_per_row,
+			     guint8	   *cols_per_row,
 			     gint	    mins_per_row)
 {
 	gint start_row, end_row, col, row;
Index: calendar/gui/e-day-view-layout.h
===================================================================
--- calendar/gui/e-day-view-layout.h	(revision 34367)
+++ calendar/gui/e-day-view-layout.h	(revision 34368)
@@ -41,7 +41,7 @@ void e_day_view_layout_long_events	(GArr
 void e_day_view_layout_day_events	(GArray	   *events,
 					 gint	    rows,
 					 gint	    mins_per_row,
-					 gint8	   *cols_per_row);
+					 guint8	   *cols_per_row);
 
 gboolean   e_day_view_find_long_event_days	(EDayViewEvent	*event,
 						 gint		 days_shown,
Index: calendar/gui/print.c
===================================================================
--- calendar/gui/print.c	(revision 34367)
+++ calendar/gui/print.c	(revision 34368)
@@ -180,7 +180,7 @@ struct pdinfo
 	gint end_minute_offset;
 	gint rows;
 	gint mins_per_row;
-	gint8 cols_per_row[DAY_VIEW_ROWS];
+	guint8 cols_per_row[DAY_VIEW_ROWS];
 	gboolean use_24_hour_format;
 };
 
@@ -1721,6 +1721,8 @@ print_week_summary (GtkPrintContext *con
 }
 
 
+/* XXX Evolution doesn't have a "year" view. */
+#if 0
 static void
 print_year_summary (GtkPrintContext *context, GnomeCalendar *gcal, time_t whence,
 		    double left, double right, double top, double bottom,
@@ -1763,6 +1765,7 @@ print_year_summary (GtkPrintContext *con
 		}
 	}
 }
+#endif
 
 static void
 print_month_summary (GtkPrintContext *context, GnomeCalendar *gcal, time_t whence,
@@ -2118,6 +2121,7 @@ print_month_view (GtkPrintContext *conte
 }
 
 /* XXX Evolution doesn't have a "year" view. */
+#if 0
 static void
 print_year_view (GtkPrintContext *context, GnomeCalendar *gcal, time_t date)
 {
@@ -2146,6 +2150,7 @@ print_year_view (GtkPrintContext *contex
 	cr=gtk_print_context_get_cairo_context (context);
 	cairo_show_page (cr);
 }
+#endif
 
 static void
 write_label_piece (time_t t, char *buffer, int size, char *stext, char *etext)
@@ -2576,7 +2581,7 @@ print_table_draw_page (GtkPrintOperation
                        EPrintable *printable)
 {
 	GtkPageSetup *setup;
-	gdouble width, height;
+	gdouble width;
 
 	setup = gtk_print_context_get_page_setup (context);
 
Index: calendar/ChangeLog
===================================================================
--- calendar/ChangeLog	(revision 34367)
+++ calendar/ChangeLog	(revision 34368)
@@ -1,3 +1,19 @@
+2007-10-09  Matthew Barnes  <mbarnes@redhat.com>
+
+	** Fixes part of bug #437579
+
+	* conduits/calendar/calendar-conduit.c:
+	* conduits/memo/memo-conduit.c:
+	* conduits/todo/todo-conduit.c:
+	* gui/dialogs/alarm-dialog.c:
+	* gui/dialogs/event-page.c:
+	* gui/dialogs/memo-page.c:
+	* gui/dialogs/task-page.c:
+	* gui/e-day-view-layout.c:
+	* gui/e-day-view-layout.h:
+	* gui/print.c:
+	Fix various compiler warnings.  Patch from Milan Crha.
+
 2007-10-09  Milan Crha  <mcrha@redhat.com>
 
 	** Fix for bug #324526
Index: calendar/conduits/todo/todo-conduit.c
===================================================================
--- calendar/conduits/todo/todo-conduit.c	(revision 34367)
+++ calendar/conduits/todo/todo-conduit.c	(revision 34368)
@@ -1207,6 +1207,7 @@ for_each (GnomePilotConduitSyncAbs *cond
 {
 	static GList *comps, *iterator;
 	static int count;
+        GList *unused;
 
 	g_return_val_if_fail (local != NULL, -1);
 
@@ -1225,7 +1226,7 @@ for_each (GnomePilotConduitSyncAbs *cond
 			/* NOTE: ignore the return value, otherwise ctxt->locals
 			 * gets messed up. The calling function keeps track of
 			 * the *local variable */
-			g_list_prepend (ctxt->locals, *local);
+			unused = g_list_prepend (ctxt->locals, *local);
 			
 			iterator = comps;
 		} else {
@@ -1244,7 +1245,7 @@ for_each (GnomePilotConduitSyncAbs *cond
 			/* NOTE: ignore the return value, otherwise ctxt->locals
 			 * gets messed up. The calling function keeps track of
 			 * the *local variable */
-			g_list_prepend (ctxt->locals, *local);
+			unused = g_list_prepend (ctxt->locals, *local);
 		} else {
 			LOG (g_message ( "for_each ending" ));
 
@@ -1265,6 +1266,7 @@ for_each_modified (GnomePilotConduitSync
 {
 	static GList *iterator;
 	static int count;
+        GList *unused;
 
 	g_return_val_if_fail (local != NULL, 0);
 
@@ -1287,7 +1289,7 @@ for_each_modified (GnomePilotConduitSync
 			/* NOTE: ignore the return value, otherwise ctxt->locals
 			 * gets messed up. The calling function keeps track of
 			 * the *local variable */
-			g_list_prepend (ctxt->locals, *local);
+			unused = g_list_prepend (ctxt->locals, *local);
 		} else {
 			LOG (g_message ( "no events" ));
 
@@ -1305,7 +1307,7 @@ for_each_modified (GnomePilotConduitSync
 			/* NOTE: ignore the return value, otherwise ctxt->locals
 			 * gets messed up. The calling function keeps track of
 			 * the *local variable */
-			g_list_prepend (ctxt->locals, *local);
+			unused = g_list_prepend (ctxt->locals, *local);
 		} else {
 			LOG (g_message ( "for_each_modified ending" ));
 
Index: calendar/conduits/calendar/calendar-conduit.c
===================================================================
--- calendar/conduits/calendar/calendar-conduit.c	(revision 34367)
+++ calendar/conduits/calendar/calendar-conduit.c	(revision 34368)
@@ -834,9 +834,10 @@ local_record_to_pilot_record (ECalLocalR
 			      ECalConduitContext *ctxt)
 {
 	GnomePilotRecord p;
-	static char record[0xffff];
 #ifdef PILOT_LINK_0_12
 	pi_buffer_t * buffer;
+#else
+	static char record[0xffff];
 #endif
 
 	g_assert (local->comp != NULL);
@@ -1729,6 +1730,7 @@ for_each (GnomePilotConduitSyncAbs *cond
 {
 	static GList *comps, *iterator;
 	static int count;
+        GList *unused;
 
 	g_return_val_if_fail (local != NULL, -1);
 
@@ -1747,7 +1749,7 @@ for_each (GnomePilotConduitSyncAbs *cond
 			/* NOTE: ignore the return value, otherwise ctxt->locals
 			 * gets messed up. The calling function keeps track of
 			 * the *local variable */
-			g_list_prepend (ctxt->locals, *local);
+			unused = g_list_prepend (ctxt->locals, *local);
 
 			iterator = comps;
 		} else {
@@ -1766,7 +1768,7 @@ for_each (GnomePilotConduitSyncAbs *cond
 			/* NOTE: ignore the return value, otherwise ctxt->locals
 			 * gets messed up. The calling function keeps track of
 			 * the *local variable */
-			g_list_prepend (ctxt->locals, *local);
+			unused = g_list_prepend (ctxt->locals, *local);
 		} else {
 			LOG (g_message ( "for_each ending" ));
 
@@ -1787,6 +1789,7 @@ for_each_modified (GnomePilotConduitSync
 {
 	static GList *iterator;
 	static int count;
+        GList *unused;
 
 	g_return_val_if_fail (local != NULL, -1);
 
@@ -1809,7 +1812,7 @@ for_each_modified (GnomePilotConduitSync
 			/* NOTE: ignore the return value, otherwise ctxt->locals
 			 * gets messed up. The calling function keeps track of
 			 * the *local variable */
-			g_list_prepend (ctxt->locals, *local);
+			unused = g_list_prepend (ctxt->locals, *local);
 		} else {
 			LOG (g_message ( "no events" ));
 
@@ -1827,7 +1830,7 @@ for_each_modified (GnomePilotConduitSync
 			/* NOTE: ignore the return value, otherwise ctxt->locals
 			 * gets messed up. The calling function keeps track of
 			 * the *local variable */
-			g_list_prepend (ctxt->locals, *local);
+			unused = g_list_prepend (ctxt->locals, *local);
 		} else {
 			LOG (g_message ( "for_each_modified ending" ));
 
Index: calendar/conduits/memo/memo-conduit.c
===================================================================
--- calendar/conduits/memo/memo-conduit.c	(revision 34367)
+++ calendar/conduits/memo/memo-conduit.c	(revision 34368)
@@ -467,9 +467,10 @@ local_record_to_pilot_record (EMemoLocal
 			      EMemoConduitContext *ctxt)
 {
 	GnomePilotRecord p;
-	static char record[0xffff];
 #ifdef PILOT_LINK_0_12
 	pi_buffer_t * buffer;
+#else
+	static char record[0xffff];
 #endif
 
 	g_assert (local->comp != NULL);
@@ -1020,6 +1021,7 @@ for_each (GnomePilotConduitSyncAbs *cond
 {
 	static GList *comps, *iterator;
 	static int count;
+        GList *unused;
 
 	g_return_val_if_fail (local != NULL, -1);
 
@@ -1038,7 +1040,7 @@ for_each (GnomePilotConduitSyncAbs *cond
 			/* NOTE: ignore the return value, otherwise ctxt->locals
 			 * gets messed up. The calling function keeps track of
 			 * the *local variable */
-		        g_list_prepend (ctxt->locals, *local);
+		        unused = g_list_prepend (ctxt->locals, *local);
 			iterator = comps;
 		} else {
 			LOG (g_message ( "no events" ));
@@ -1058,7 +1060,7 @@ for_each (GnomePilotConduitSyncAbs *cond
 			/* NOTE: ignore the return value, otherwise ctxt->locals
 			 * gets messed up. The calling function keeps track of
 			 * the *local variable */
-			g_list_prepend (ctxt->locals, *local);
+			unused = g_list_prepend (ctxt->locals, *local);
 		} else {
 			LOG (g_message ( "for_each ending" ));
 
@@ -1079,6 +1081,7 @@ for_each_modified (GnomePilotConduitSync
 {
 	static GList *iterator;
 	static int count;
+        GList *unused;
 
 	g_return_val_if_fail (local != NULL, 0);
 
@@ -1101,7 +1104,7 @@ for_each_modified (GnomePilotConduitSync
 			/* NOTE: ignore the return value, otherwise ctxt->locals
 			 * gets messed up. The calling function keeps track of
 			 * the *local variable */
-			g_list_prepend (ctxt->locals, *local);
+			unused = g_list_prepend (ctxt->locals, *local);
 		} else {
 			LOG (g_message ( "no events" ));
 
@@ -1120,7 +1123,7 @@ for_each_modified (GnomePilotConduitSync
 			/* NOTE: ignore the return value, otherwise ctxt->locals
 			 * gets messed up. The calling function keeps track of
 			 * the *local variable */
-			g_list_prepend (ctxt->locals, *local);
+			unused = g_list_prepend (ctxt->locals, *local);
 		} else {
 			LOG (g_message ( "for_each_modified ending" ));
 
