From 1c704dd22d81b2d6307125d47cc895127f8e34c9 Mon Sep 17 00:00:00 2001 From: Daniel Kahn Gillmor Date: Sun, 26 May 2019 18:16:10 -0400 Subject: [PATCH] cli/reply: pull proposed subject line from the message, not the index Protected subject lines were being emitted in reply when the cleartext of documents was indexed. create_reply_message() was pulling the subject line from the index, rather than pulling it from the GMimeMessage object that it already has on hand. This one-line fix to notmuch-reply.c solves that problem, and doesn't cause any additional tests to fail. Signed-off-by: Daniel Kahn Gillmor --- notmuch-reply.c | 2 +- test/T356-protected-headers.sh | 1 - test/T358-emacs-protected-headers.sh | 1 - 3 files changed, 1 insertion(+), 3 deletions(-) diff --git a/notmuch-reply.c b/notmuch-reply.c index 2689b247..46bab434 100644 --- a/notmuch-reply.c +++ b/notmuch-reply.c @@ -591,7 +591,7 @@ create_reply_message(void *ctx, from_addr); g_mime_object_set_header (GMIME_OBJECT (reply), "From", from_addr, NULL); - subject = notmuch_message_get_header (message, "subject"); + subject = g_mime_message_get_subject (mime_message); if (subject) { if (strncasecmp (subject, "Re:", 3)) subject = talloc_asprintf (ctx, "Re: %s", subject); diff --git a/test/T356-protected-headers.sh b/test/T356-protected-headers.sh index 746c4760..4af018f3 100755 --- a/test/T356-protected-headers.sh +++ b/test/T356-protected-headers.sh @@ -100,7 +100,6 @@ test_json_nodes <<<"$output" \ 'subject:[0]["subject"]="This is a protected header"' test_begin_subtest "indexed protected subject is not visible in reply header" -test_subtest_known_broken output=$(notmuch reply --format=json 'id:protected-header@crypto.notmuchmail.org') test_json_nodes <<<"$output" \ 'subject:["original"]["headers"]["Subject"]="This is a protected header"' \ diff --git a/test/T358-emacs-protected-headers.sh b/test/T358-emacs-protected-headers.sh index 765511d4..c195d5c2 100755 --- a/test/T358-emacs-protected-headers.sh +++ b/test/T358-emacs-protected-headers.sh @@ -92,7 +92,6 @@ test_expect_equal_file EXPECTED OUTPUT # notmuch-emacs still leaks the subject line: test_begin_subtest "don't leak protected subject during reply, even if indexed" -test_subtest_known_broken test_emacs "(let ((message-hidden-headers '())) (notmuch-show \"id:protected-header@crypto.notmuchmail.org\") (notmuch-show-reply)