Re: [PATCH] News for emacs saved-searches change.
[notmuch-archives.git] / 3b / 3384f8e6276dd8c51d7a614af15f726ceb5c21
1 Return-Path: <bremner@tethera.net>\r
2 X-Original-To: notmuch@notmuchmail.org\r
3 Delivered-To: notmuch@notmuchmail.org\r
4 Received: from localhost (localhost [127.0.0.1])\r
5         by olra.theworths.org (Postfix) with ESMTP id 63647431FC2\r
6         for <notmuch@notmuchmail.org>; Sun, 16 Dec 2012 20:00:52 -0800 (PST)\r
7 X-Virus-Scanned: Debian amavisd-new at olra.theworths.org\r
8 X-Spam-Flag: NO\r
9 X-Spam-Score: 0\r
10 X-Spam-Level: \r
11 X-Spam-Status: No, score=0 tagged_above=-999 required=5 tests=[none]\r
12         autolearn=disabled\r
13 Received: from olra.theworths.org ([127.0.0.1])\r
14         by localhost (olra.theworths.org [127.0.0.1]) (amavisd-new, port 10024)\r
15         with ESMTP id 07O+a5-mTrVd for <notmuch@notmuchmail.org>;\r
16         Sun, 16 Dec 2012 20:00:51 -0800 (PST)\r
17 Received: from tesseract.cs.unb.ca (tesseract.cs.unb.ca [131.202.240.238])\r
18         (using TLSv1 with cipher AES256-SHA (256/256 bits))\r
19         (No client certificate requested)\r
20         by olra.theworths.org (Postfix) with ESMTPS id DF16C431FC4\r
21         for <notmuch@notmuchmail.org>; Sun, 16 Dec 2012 20:00:46 -0800 (PST)\r
22 Received: from fctnnbsc30w-142167090129.dhcp-dynamic.fibreop.nb.bellaliant.net\r
23         ([142.167.90.129] helo=zancas.localnet)\r
24         by tesseract.cs.unb.ca with esmtpsa\r
25         (TLS1.0:DHE_RSA_AES_128_CBC_SHA1:16) (Exim 4.72)\r
26         (envelope-from <bremner@tethera.net>)\r
27         id 1TkRsk-0008LV-5d; Mon, 17 Dec 2012 00:00:46 -0400\r
28 Received: from bremner by zancas.localnet with local (Exim 4.80)\r
29         (envelope-from <bremner@tethera.net>)\r
30         id 1TkRse-0000ng-N0; Mon, 17 Dec 2012 00:00:40 -0400\r
31 From: david@tethera.net\r
32 To: notmuch@notmuchmail.org\r
33 Subject: [PATCH 1/3] notmuch-restore: fix return value propagation\r
34 Date: Sun, 16 Dec 2012 23:59:46 -0400\r
35 Message-Id: <1355716788-2940-2-git-send-email-david@tethera.net>\r
36 X-Mailer: git-send-email 1.7.10.4\r
37 In-Reply-To: <1355716788-2940-1-git-send-email-david@tethera.net>\r
38 References: <1355716788-2940-1-git-send-email-david@tethera.net>\r
39 X-Spam_bar: -\r
40 Cc: David Bremner <bremner@debian.org>\r
41 X-BeenThere: notmuch@notmuchmail.org\r
42 X-Mailman-Version: 2.1.13\r
43 Precedence: list\r
44 List-Id: "Use and development of the notmuch mail system."\r
45         <notmuch.notmuchmail.org>\r
46 List-Unsubscribe: <http://notmuchmail.org/mailman/options/notmuch>,\r
47         <mailto:notmuch-request@notmuchmail.org?subject=unsubscribe>\r
48 List-Archive: <http://notmuchmail.org/pipermail/notmuch>\r
49 List-Post: <mailto:notmuch@notmuchmail.org>\r
50 List-Help: <mailto:notmuch-request@notmuchmail.org?subject=help>\r
51 List-Subscribe: <http://notmuchmail.org/mailman/listinfo/notmuch>,\r
52         <mailto:notmuch-request@notmuchmail.org?subject=subscribe>\r
53 X-List-Received-Date: Mon, 17 Dec 2012 04:00:52 -0000\r
54 \r
55 From: David Bremner <bremner@debian.org>\r
56 \r
57 Previously notmuch_restore_command returned 0 if tag_message returned\r
58 a non-zero (failure) value. This is wrong, since non-zero status\r
59 indicates something mysterious went wrong with retrieving the message,\r
60 or applying it.\r
61 \r
62 There was also a failure to check or propagate the return value from\r
63 tag_op_list_apply in tag_message.\r
64 ---\r
65  notmuch-restore.c |   13 ++++++++++---\r
66  1 file changed, 10 insertions(+), 3 deletions(-)\r
67 \r
68 diff --git a/notmuch-restore.c b/notmuch-restore.c\r
69 index 40596a8..5a02328 100644\r
70 --- a/notmuch-restore.c\r
71 +++ b/notmuch-restore.c\r
72 @@ -25,6 +25,9 @@\r
73  \r
74  static regex_t regex;\r
75  \r
76 +/* Non-zero return indicates an error in retrieving the message,\r
77 + * or in applying the tags.\r
78 + */\r
79  static int\r
80  tag_message (unused (void *ctx),\r
81              notmuch_database_t *notmuch,\r
82 @@ -48,7 +51,7 @@ tag_message (unused (void *ctx),\r
83      /* In order to detect missing messages, this check/optimization is\r
84       * intentionally done *after* first finding the message. */\r
85      if ((flags & TAG_FLAG_REMOVE_ALL) || tag_op_list_size (tag_ops))\r
86 -       tag_op_list_apply (message, tag_ops, flags);\r
87 +       ret = tag_op_list_apply (message, tag_ops, flags);\r
88  \r
89      notmuch_message_destroy (message);\r
90  \r
91 @@ -231,8 +234,12 @@ notmuch_restore_command (unused (void *ctx), int argc, char *argv[])\r
92         if (ret > 0)\r
93             continue;\r
94  \r
95 -       if (ret < 0 || tag_message (ctx, notmuch, query_string,\r
96 -                                   tag_ops, flags))\r
97 +       if (ret < 0)\r
98 +           break;\r
99 +\r
100 +       ret = tag_message (line_ctx, notmuch, query_string,\r
101 +                          tag_ops, flags);\r
102 +       if (ret)\r
103             break;\r
104  \r
105      }  while ((line_len = getline (&line, &line_size, input)) != -1);\r
106 -- \r
107 1.7.10.4\r
108 \r