Index: camel/providers/groupwise/camel-groupwise-folder.c
===================================================================
--- camel/providers/groupwise/camel-groupwise-folder.c	(revision 8210)
+++ camel/providers/groupwise/camel-groupwise-folder.c	(working copy)
@@ -1684,7 +1684,7 @@ groupwise_folder_item_to_msg( CamelFolde
 			EGwItemAttachment *attach = (EGwItemAttachment *)al->data;
 			if (!g_ascii_strcasecmp (attach->name, "Mime.822")) {
 				if (attach->size > MAX_ATTACHMENT_SIZE) {
-					int len_iter = 0, t_len , offset = 0, t_offset = 0;
+					int t_len , offset = 0, t_offset = 0;
 					char *t_attach = NULL;
 					GString *gstr = g_string_new (NULL);
 
@@ -1694,6 +1694,7 @@ groupwise_folder_item_to_msg( CamelFolde
 								attach->id, t_offset, MAX_ATTACHMENT_SIZE,
 								(const char **)&t_attach, &t_len, &offset);
 						if (status == E_GW_CONNECTION_STATUS_OK) {
+							int len_iter = 0;
 							char *temp = NULL;
 
 							temp = g_base64_decode(t_attach, &len_iter);
Index: camel/camel-mime-utils.c
===================================================================
--- camel/camel-mime-utils.c	(revision 8211)
+++ camel/camel-mime-utils.c	(working copy)
@@ -192,7 +192,7 @@ size_t
 camel_base64_decode_simple (char *data, size_t len)
 {
 	guchar *out_data;
-	gsize out_len;
+	gsize out_len = 0;
 
 	g_return_val_if_fail (data != NULL, 0);
 	g_return_val_if_fail (strlen (data) > 1, 0);
Index: camel/camel-sasl.c
===================================================================
--- camel/camel-sasl.c	(revision 8210)
+++ camel/camel-sasl.c	(working copy)
@@ -134,9 +134,9 @@ camel_sasl_challenge_base64 (CamelSasl *
 
 	g_return_val_if_fail (CAMEL_IS_SASL (sasl), NULL);
 
-	if (token) {
+	if (token && *token) {
 		guchar *data;
-		gsize length;
+		gsize length = 0;
 
 		data = g_base64_decode (token, &length);
 		token_binary = g_byte_array_new ();
Index: servers/exchange/lib/e2k-autoconfig.c
===================================================================
--- servers/exchange/lib/e2k-autoconfig.c	(revision 8210)
+++ servers/exchange/lib/e2k-autoconfig.c	(working copy)
@@ -306,8 +306,6 @@ get_ctx_auth_handler (SoupMessage *msg, 
 	E2kAutoconfig *ac = user_data;
 	const GSList *headers;
 	const char *challenge_hdr;
-	guchar *challenge;
-	gsize length;
 
 	ac->saw_ntlm = ac->saw_basic = FALSE;
 	headers = soup_message_get_header_list (msg->response_headers,
@@ -322,6 +320,9 @@ get_ctx_auth_handler (SoupMessage *msg, 
 
 		if (!strncmp (challenge_hdr, "NTLM ", 5) &&
 		    (!ac->w2k_domain || !ac->nt_domain)) {
+			guchar *challenge;
+			gsize length = 0;
+
 			challenge = g_base64_decode (challenge_hdr + 5, &length);
 			if (!ac->nt_domain)
 				ac->nt_domain_defaulted = TRUE;
Index: servers/exchange/lib/e2k-result.c
===================================================================
--- servers/exchange/lib/e2k-result.c	(revision 8210)
+++ servers/exchange/lib/e2k-result.c	(working copy)
@@ -45,7 +45,7 @@ prop_get_binary_array (E2kResult *result
 		byte_array = g_byte_array_new ();
 		if (node->xmlChildrenNode && node->xmlChildrenNode->content) {
 			guchar *data;
-			gsize length;
+			gsize length = 0;
 
 			data = g_base64_decode (
 				node->xmlChildrenNode->content, &length);
@@ -84,7 +84,7 @@ prop_get_binary (E2kResult *result, cons
 	byte_array = g_byte_array_new ();
 	if (node->xmlChildrenNode && node->xmlChildrenNode->content) {
 		guchar *data;
-		gsize length;
+		gsize length = 0;
 
 		data = g_base64_decode (
 			node->xmlChildrenNode->content, &length);
Index: libedataserverui/e-passwords.c
===================================================================
--- libedataserverui/e-passwords.c	(revision 8210)
+++ libedataserverui/e-passwords.c	(working copy)
@@ -214,7 +214,7 @@ ep_password_decode (const gchar *encoded
 	 * to the decoded data to make it a nul-terminated string. */
 
 	gchar *password;
-	gsize length;
+	gsize length = 0;
 
 	password = (gchar *) g_base64_decode (encoded_password, &length);
 	password = g_realloc (password, length + 1);
Index: addressbook/tests/ebook/test-photo.c
===================================================================
--- addressbook/tests/ebook/test-photo.c	(revision 8210)
+++ addressbook/tests/ebook/test-photo.c	(working copy)
@@ -28,15 +28,19 @@ main (int argc, char **argv)
 {
 	EContact *contact;
 	EContactPhoto *photo, *new_photo;
+	guchar *data;
+	gsize length = 0;
 
 	g_type_init ();
 
 	contact = e_contact_new ();
+	data = g_base64_decode (photo_data, &length);
 
 	photo = g_new (EContactPhoto, 1);
 	photo->type = E_CONTACT_PHOTO_TYPE_INLINED;
 	photo->data.inlined.mime_type = NULL;
-	photo->data.inlined.data = g_base64_decode (photo_data, &photo->data.inlined.length);
+	photo->data.inlined.data = data;
+	photo->data.inlined.length = length;
 
 	/* set the photo */
 	e_contact_set (contact, E_CONTACT_PHOTO, photo);
Index: addressbook/libebook/e-vcard.c
===================================================================
--- addressbook/libebook/e-vcard.c	(revision 8210)
+++ addressbook/libebook/e-vcard.c	(working copy)
@@ -1780,7 +1780,7 @@ e_vcard_attribute_get_values_decoded (EV
 		case EVC_ENCODING_BASE64:
 			for (l = attr->values; l; l = l->next) {
 				guchar *decoded;
-				gsize len;
+				gsize len = 0;
 
 				decoded = g_base64_decode (l->data, &len);
 				attr->decoded_values = g_list_prepend (attr->decoded_values, g_string_new_len (decoded, len));
