[evolution-mapi] Message size in message list not shown (always zero bytes)



commit 1a541503f5d6393bbca106880ddb80cb70586fbd
Author: Milan Crha <mcrha redhat com>
Date:   Thu Feb 2 11:31:25 2012 +0100

    Message size in message list not shown (always zero bytes)
    
    This requires refetch of message summary.

 src/camel/camel-mapi-folder.c           |   24 ++++++++++++++----------
 src/libexchangemapi/e-mapi-connection.c |   19 ++++++++++---------
 2 files changed, 24 insertions(+), 19 deletions(-)
---
diff --git a/src/camel/camel-mapi-folder.c b/src/camel/camel-mapi-folder.c
index b9c3330..f573165 100644
--- a/src/camel/camel-mapi-folder.c
+++ b/src/camel/camel-mapi-folder.c
@@ -596,8 +596,12 @@ gather_object_summary_cb (EMapiConnection *conn,
 				info = camel_folder_summary_info_new_from_header (gos->folder->summary, part->headers);
 				if (info) {
 					CamelMapiMessageInfo *minfo = (CamelMapiMessageInfo *) info;
+					const uint32_t *msg_size;
 
 					minfo->info.uid = camel_pstring_strdup (uid_str);
+
+					msg_size = e_mapi_util_find_array_propval (&object->properties, PidTagMessageSize);
+					minfo->info.size = msg_size ? *msg_size : 0;
 				}
 			}
 
@@ -613,15 +617,15 @@ gather_object_summary_cb (EMapiConnection *conn,
 			gchar *formatted_addr, *from_name, *from_email;
 			CamelAddress *to_addr, *cc_addr, *bcc_addr;
 
-			subject = e_mapi_util_find_array_propval (&object->properties, PR_SUBJECT_UNICODE);
+			subject = e_mapi_util_find_array_propval (&object->properties, PidTagSubject);
 			delivery_time = e_mapi_util_find_array_propval (&object->properties, PidTagMessageDeliveryTime);
 			submit_time = e_mapi_util_find_array_propval (&object->properties, PidTagClientSubmitTime);
-			msg_size = e_mapi_util_find_array_propval (&object->properties, PR_MESSAGE_SIZE);
-			message_id = e_mapi_util_find_array_propval (&object->properties, PR_INTERNET_MESSAGE_ID);
-			references = e_mapi_util_find_array_propval (&object->properties, PR_INTERNET_REFERENCES);
-			in_reply_to = e_mapi_util_find_array_propval (&object->properties, PR_IN_REPLY_TO_ID);
-			display_to = e_mapi_util_find_array_propval (&object->properties, PR_DISPLAY_TO_UNICODE);
-			display_cc = e_mapi_util_find_array_propval (&object->properties, PR_DISPLAY_CC_UNICODE);
+			msg_size = e_mapi_util_find_array_propval (&object->properties, PidTagMessageSize);
+			message_id = e_mapi_util_find_array_propval (&object->properties, PidTagInternetMessageId);
+			references = e_mapi_util_find_array_propval (&object->properties, PidTagInternetReferences);
+			in_reply_to = e_mapi_util_find_array_propval (&object->properties, PidTagInReplyToId);
+			display_to = e_mapi_util_find_array_propval (&object->properties, PidTagDisplayTo);
+			display_cc = e_mapi_util_find_array_propval (&object->properties, PidTagDisplayCc);
 
 			info = camel_message_info_new (gos->folder->summary);
 			minfo = (CamelMapiMessageInfo *) info;
@@ -673,9 +677,9 @@ gather_object_summary_cb (EMapiConnection *conn,
 			from_email = NULL;
 
 			e_mapi_mail_utils_decode_email_address1 (conn, &object->properties,
-				PR_SENT_REPRESENTING_NAME_UNICODE,
-				PR_SENT_REPRESENTING_EMAIL_ADDRESS_UNICODE,
-				PR_SENT_REPRESENTING_ADDRTYPE,
+				PidTagSentRepresentingName,
+				PidTagSentRepresentingEmailAddress,
+				PidTagSentRepresentingAddressType,
 				&from_name, &from_email);
 
 			if (from_email && *from_email) {
diff --git a/src/libexchangemapi/e-mapi-connection.c b/src/libexchangemapi/e-mapi-connection.c
index 6e42c3b..6311b19 100644
--- a/src/libexchangemapi/e-mapi-connection.c
+++ b/src/libexchangemapi/e-mapi-connection.c
@@ -2920,7 +2920,7 @@ internal_get_summary_cb (EMapiConnection *conn,
 	return gsd->cb (conn, mem_ctx, object, gsd->obj_index, gsd->obj_total, gsd->cb_user_data, cancellable, perror);
 }
 
-/* transfers items summary, which is either PR_TRANSPORT_MESSAGE_HEADERS_UNICODE or
+/* transfers items summary, which is either PidTagTransportMessageHeaders or
    the object without attachment */
 gboolean
 e_mapi_connection_transfer_summary (EMapiConnection *conn,
@@ -2963,13 +2963,14 @@ e_mapi_connection_transfer_summary (EMapiConnection *conn,
 				goto cleanup;
 			}
 
-			tags = set_SPropTagArray (mem_ctx, 8,
-				PR_FID,
-				PR_MID,
-				PR_MESSAGE_FLAGS,
-				PR_LAST_MODIFICATION_TIME,
-				PR_MESSAGE_CLASS,
-				PR_TRANSPORT_MESSAGE_HEADERS_UNICODE,
+			tags = set_SPropTagArray (mem_ctx, 9,
+				PidTagFolderId,
+				PidTagMid,
+				PidTagMessageFlags,
+				PidTagMessageSize,
+				PidTagMessageClass,
+				PidTagLastModificationTime,
+				PidTagTransportMessageHeaders,
 				PidTagIconIndex,
 				PidTagReadReceiptRequested);
 
@@ -2977,7 +2978,7 @@ e_mapi_connection_transfer_summary (EMapiConnection *conn,
 			if (ms == MAPI_E_SUCCESS) {
 				ms = MAPI_E_NOT_FOUND;
 				if (lpProps && prop_count > 0) {
-					const gchar *headers = e_mapi_util_find_SPropVal_array_propval (lpProps, PR_TRANSPORT_MESSAGE_HEADERS_UNICODE);
+					const gchar *headers = e_mapi_util_find_SPropVal_array_propval (lpProps, PidTagTransportMessageHeaders);
 
 					if (headers && *headers) {
 						EMapiObject *object;



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]