]> git.notmuchmail.org Git - notmuch/blobdiff - notmuch-reply.c
cli: replace use of g_mime_message_get_recipients
[notmuch] / notmuch-reply.c
index b88f1d31347dc058eacfd5c447c3918c9e7a0952..4c1dd56024698041f1c97bca50347ffca8cace2e 100644 (file)
@@ -44,24 +44,21 @@ format_part_reply (GMimeStream *stream, mime_node_t *node)
                              notmuch_message_get_header (node->envelope_file, "from"));
     } else if (GMIME_IS_MESSAGE (node->part)) {
        GMimeMessage *message = GMIME_MESSAGE (node->part);
-       InternetAddressList *recipients;
        char *recipients_string;
 
-       g_mime_stream_printf (stream, "> From: %s\n", g_mime_message_get_sender (message));
-       recipients = g_mime_message_get_recipients (message, GMIME_RECIPIENT_TYPE_TO);
-       recipients_string = internet_address_list_to_string (recipients, 0);
+       g_mime_stream_printf (stream, "> From: %s\n", g_mime_message_get_from_string (message));
+       recipients_string = g_mime_message_get_address_string (message, GMIME_ADDRESS_TYPE_TO);
        if (recipients_string)
            g_mime_stream_printf (stream, "> To: %s\n",
                                  recipients_string);
        g_free (recipients_string);
-       recipients = g_mime_message_get_recipients (message, GMIME_RECIPIENT_TYPE_CC);
-       recipients_string = internet_address_list_to_string (recipients, 0);
+       recipients_string = g_mime_message_get_address_string (message, GMIME_ADDRESS_TYPE_CC);
        if (recipients_string)
            g_mime_stream_printf (stream, "> Cc: %s\n",
                                  recipients_string);
        g_free (recipients_string);
        g_mime_stream_printf (stream, "> Subject: %s\n", g_mime_message_get_subject (message));
-       g_mime_stream_printf (stream, "> Date: %s\n", g_mime_message_get_date_as_string (message));
+       g_mime_stream_printf (stream, "> Date: %s\n", g_mime_message_get_date_string (node, message));
        g_mime_stream_printf (stream, ">\n");
     } else if (GMIME_IS_PART (node->part)) {
        GMimeContentType *content_type = g_mime_object_get_content_type (node->part);
@@ -268,12 +265,11 @@ reply_to_header_is_redundant (GMimeMessage *message,
 
 static InternetAddressList *get_sender(GMimeMessage *message)
 {
-    const char *reply_to;
-
-    reply_to = g_mime_message_get_reply_to (message);
-    if (reply_to && *reply_to) {
-       InternetAddressList *reply_to_list;
+    InternetAddressList *reply_to_list;
 
+    reply_to_list = g_mime_message_get_reply_to_list (message);
+    if (reply_to_list &&
+       internet_address_list_length (reply_to_list) > 0) {
         /*
         * Some mailing lists munge the Reply-To header despite it
         * being A Bad Thing, see
@@ -287,30 +283,28 @@ static InternetAddressList *get_sender(GMimeMessage *message)
         * to the list. Note that the address in the Reply-To header
         * will always appear in the reply if reply_all is true.
         */
-       reply_to_list = internet_address_list_parse_string (reply_to);
        if (! reply_to_header_is_redundant (message, reply_to_list))
            return reply_to_list;
 
        g_object_unref (G_OBJECT (reply_to_list));
     }
 
-    return internet_address_list_parse_string (
-       g_mime_message_get_sender (message));
+    return g_mime_message_get_from (message);
 }
 
 static InternetAddressList *get_to(GMimeMessage *message)
 {
-    return g_mime_message_get_recipients (message, GMIME_RECIPIENT_TYPE_TO);
+    return g_mime_message_get_addresses (message, GMIME_ADDRESS_TYPE_TO);
 }
 
 static InternetAddressList *get_cc(GMimeMessage *message)
 {
-    return g_mime_message_get_recipients (message, GMIME_RECIPIENT_TYPE_CC);
+    return g_mime_message_get_addresses (message, GMIME_ADDRESS_TYPE_CC);
 }
 
 static InternetAddressList *get_bcc(GMimeMessage *message)
 {
-    return g_mime_message_get_recipients (message, GMIME_RECIPIENT_TYPE_BCC);
+    return g_mime_message_get_addresses (message, GMIME_ADDRESS_TYPE_BCC);
 }
 
 /* Augment the recipients of 'reply' from the "Reply-to:", "From:",
@@ -341,10 +335,10 @@ add_recipients_from_message (GMimeMessage *reply,
        InternetAddressList * (*get_header)(GMimeMessage *message);
        GMimeRecipientType recipient_type;
     } reply_to_map[] = {
-       { get_sender,   GMIME_RECIPIENT_TYPE_TO },
-       { get_to,       GMIME_RECIPIENT_TYPE_TO },
-       { get_cc,       GMIME_RECIPIENT_TYPE_CC },
-       { get_bcc,      GMIME_RECIPIENT_TYPE_BCC },
+       { get_sender,   GMIME_ADDRESS_TYPE_TO },
+       { get_to,       GMIME_ADDRESS_TYPE_TO },
+       { get_cc,       GMIME_ADDRESS_TYPE_CC },
+       { get_bcc,      GMIME_ADDRESS_TYPE_BCC },
     };
     const char *from_addr = NULL;
     unsigned int i;
@@ -635,7 +629,7 @@ static int do_reply(notmuch_config_t *config,
            return 1;
 
        if (count != 1) {
-           fprintf (stderr, "Error: search term did not match precisely one message (matched %d messages).\n", count);
+           fprintf (stderr, "Error: search term did not match precisely one message (matched %u messages).\n", count);
            return 1;
        }