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 arlo.cworth.org (Postfix) with ESMTP id A3F0D6DE1459
\r
6 for <notmuch@notmuchmail.org>; Sat, 9 Jan 2016 18:52:24 -0800 (PST)
\r
7 X-Virus-Scanned: Debian amavisd-new at cworth.org
\r
11 X-Spam-Status: No, score=-0.312 tagged_above=-999 required=5 tests=[AWL=0.239,
\r
12 RP_MATCHES_RCVD=-0.55, SPF_PASS=-0.001] autolearn=disabled
\r
13 Received: from arlo.cworth.org ([127.0.0.1])
\r
14 by localhost (arlo.cworth.org [127.0.0.1]) (amavisd-new, port 10024)
\r
15 with ESMTP id ztSQc4e20zrU for <notmuch@notmuchmail.org>;
\r
16 Sat, 9 Jan 2016 18:52:23 -0800 (PST)
\r
17 Received: from fethera.tethera.net (fethera.tethera.net [198.245.60.197])
\r
18 by arlo.cworth.org (Postfix) with ESMTPS id 455036DE02DA
\r
19 for <notmuch@notmuchmail.org>; Sat, 9 Jan 2016 18:51:59 -0800 (PST)
\r
20 Received: from remotemail by fethera.tethera.net with local (Exim 4.84)
\r
21 (envelope-from <bremner@tethera.net>)
\r
22 id 1aI66f-0007E4-8H; Sat, 09 Jan 2016 21:51:49 -0500
\r
23 Received: (nullmailer pid 29654 invoked by uid 1000);
\r
24 Sun, 10 Jan 2016 02:51:47 -0000
\r
25 From: David Bremner <david@tethera.net>
\r
26 To: notmuch@notmuchmail.org
\r
27 Subject: [WIP patch 6/9] lib: add notmuch_metadata_destroy
\r
28 Date: Sat, 9 Jan 2016 22:51:38 -0400
\r
29 Message-Id: <1452394301-29499-7-git-send-email-david@tethera.net>
\r
30 X-Mailer: git-send-email 2.6.4
\r
31 In-Reply-To: <1452394301-29499-1-git-send-email-david@tethera.net>
\r
32 References: <1452394301-29499-1-git-send-email-david@tethera.net>
\r
33 X-BeenThere: notmuch@notmuchmail.org
\r
34 X-Mailman-Version: 2.1.20
\r
36 List-Id: "Use and development of the notmuch mail system."
\r
37 <notmuch.notmuchmail.org>
\r
38 List-Unsubscribe: <https://notmuchmail.org/mailman/options/notmuch>,
\r
39 <mailto:notmuch-request@notmuchmail.org?subject=unsubscribe>
\r
40 List-Archive: <http://notmuchmail.org/pipermail/notmuch/>
\r
41 List-Post: <mailto:notmuch@notmuchmail.org>
\r
42 List-Help: <mailto:notmuch-request@notmuchmail.org?subject=help>
\r
43 List-Subscribe: <https://notmuchmail.org/mailman/listinfo/notmuch>,
\r
44 <mailto:notmuch-request@notmuchmail.org?subject=subscribe>
\r
45 X-List-Received-Date: Sun, 10 Jan 2016 02:52:24 -0000
\r
48 lib/metadata.cc | 6 ++++++
\r
49 lib/notmuch.h | 14 +++++++++++++-
\r
50 test/T590-metadata.sh | 1 +
\r
51 3 files changed, 20 insertions(+), 1 deletion(-)
\r
53 diff --git a/lib/metadata.cc b/lib/metadata.cc
\r
54 index a355b75..79a0a9e 100644
\r
55 --- a/lib/metadata.cc
\r
56 +++ b/lib/metadata.cc
\r
57 @@ -245,3 +245,9 @@ notmuch_metadata_move_to_next (notmuch_metadata_t *metadata)
\r
59 (*(metadata->iterator))++;
\r
63 +notmuch_metadata_destroy (notmuch_metadata_t *metadata)
\r
65 + talloc_free (metadata);
\r
67 diff --git a/lib/notmuch.h b/lib/notmuch.h
\r
68 index b00126d..6773253 100644
\r
71 @@ -1869,12 +1869,18 @@ notmuch_metadata_valid (notmuch_metadata_t *metadata);
\r
74 * return key for current metadata pair
\r
76 + * return value is owned by the iterator, and will be destroyed by the
\r
77 + * next call to notmuch_metadata_key or notmuch_metadata_destroy.
\r
80 notmuch_metadata_key (notmuch_metadata_t *metadata);
\r
83 - * return value for current metadata pair
\r
84 + * return 'value' for current metadata pair
\r
86 + * return value is owned by the iterator, and will be destroyed by the
\r
87 + * next call to notmuch_metadata_value
\r
90 notmuch_metadata_value (notmuch_metadata_t *metadata);
\r
91 @@ -1885,6 +1891,12 @@ notmuch_metadata_value (notmuch_metadata_t *metadata);
\r
93 notmuch_metadata_move_to_next (notmuch_metadata_t *metadata);
\r
96 + * free any resources held by 'metadata'
\r
99 +notmuch_metadata_destroy (notmuch_metadata_t * metadata);
\r
104 diff --git a/test/T590-metadata.sh b/test/T590-metadata.sh
\r
105 index 4f37c09..4d55298 100755
\r
106 --- a/test/T590-metadata.sh
\r
107 +++ b/test/T590-metadata.sh
\r
108 @@ -64,6 +64,7 @@ cat c_head - c_tail <<'EOF' | test_C ${MAIL_DIR}
\r
109 printf("key = %s\n", notmuch_metadata_key (meta));
\r
110 printf("val = %s\n", notmuch_metadata_value (meta));
\r
112 + notmuch_metadata_destroy (meta);
\r
115 cat <<'EOF' >EXPECTED
\r