<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Wed Feb 07 21:10:42 UTC 2024

It is possible to restrict the fields that are returned in this document by specifying the 'field' parameter in your request.
For example, to request only the issue key and summary append 'field=key&field=summary' to the URL of your request.
-->
<rss version="0.92" >
<channel>
    <title>MongoDB Jira</title>
    <link>https://jira.mongodb.org</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-us</language>    <build-info>
        <version>9.7.1</version>
        <build-number>970001</build-number>
        <build-date>13-04-2023</build-date>
    </build-info>


<item>
            <title>[CDRIVER-812] Memory Leak When Using bson_reinit()</title>
                <link>https://jira.mongodb.org/browse/CDRIVER-812</link>
                <project id="10030" key="CDRIVER">C Driver</project>
                    <description>&lt;p&gt;The document said:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;The bson_reinit() function shall be equivalent to calling bson_destroy() and bson_init().&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;But this demo shows their difference:&lt;/p&gt;

&lt;p/&gt;
&lt;div id=&quot;syntaxplugin&quot; class=&quot;syntaxplugin&quot; style=&quot;border: 1px dashed #bbb; border-radius: 5px !important; overflow: auto; max-height: 30em;&quot;&gt;
&lt;table cellspacing=&quot;0&quot; cellpadding=&quot;0&quot; border=&quot;0&quot; width=&quot;100%&quot; style=&quot;font-size: 1em; line-height: 1.4em !important; font-weight: normal; font-style: normal; color: black;&quot;&gt;
		&lt;thead&gt;
			&lt;tr id=&quot;syntaxplugin_title&quot;&gt;
			&lt;td bgcolor=&quot;#f5f5f5&quot; style=&quot;font-family: Arial,sans-serif; color: #333; border-bottom: 1px solid #bbb; background-color: #f5f5f5 !important; font-weight: bold; line-height: 1em;&quot; &gt;
				&lt;p style=&quot;margin: 5px 10px; padding: 0;&quot;&gt;test.cc&lt;/p&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
			&lt;/thead&gt;
		&lt;tbody &gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;  margin-top: 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;#include &amp;lt;cassert&amp;gt;&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;#include &amp;lt;cstring&amp;gt;&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&amp;nbsp;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;#include &amp;lt;mongoc.h&amp;gt;&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&amp;nbsp;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;void log_bson(const bson_t *bson) {&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;  char *json = bson_as_json(bson, NULL);&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;  puts(json ? json : &quot;[bson_as_json_error]&quot;);&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt; if (json) bson_free(json);&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;}&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&amp;nbsp;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;void fill(bson_t *p1, bson_t *p2) {&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;  bool status;&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;  status = bson_append_document_begin(p1, &quot;$set&quot;, 4, p2);&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;  assert(status);&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;  status = bson_append_bool(p2, &quot;foo&quot;, 3, true);&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;  assert(status);&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;  status = bson_append_document_end(p1, p2);&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;  assert(status);&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;}&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&amp;nbsp;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;#define USE_BSON_REINIT 1&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&amp;nbsp;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;int main() {&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;  bson_t bson = BSON_INITIALIZER;&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;  bson_t child = BSON_INITIALIZER;&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;  fill(&amp;amp;bson, &amp;amp;child);&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;  log_bson(&amp;amp;bson);&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&amp;nbsp;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;#if USE_BSON_REINIT&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;  bson_reinit(&amp;amp;bson);&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;#else&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;  bson_destroy(&amp;amp;bson);&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;  bson_init(&amp;amp;bson);&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;#endif&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&amp;nbsp;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;  bson_destroy(&amp;amp;child);&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;  bson_init(&amp;amp;child);&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;  fill(&amp;amp;child, &amp;amp;bson);&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;  log_bson(&amp;amp;child);&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;  bson_destroy(&amp;amp;bson);&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;  bson_destroy(&amp;amp;child);&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   margin-bottom: 10px;  width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;}&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
			&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;p/&gt;

&lt;p&gt;Although outputs are the same when enable and disable &lt;tt&gt;USE_BSON_REINIT&lt;/tt&gt;, &lt;tt&gt;valgrind&lt;/tt&gt; detects a memory leak when  &lt;tt&gt;USE_BSON_REINIT&lt;/tt&gt; is true. Something like:&lt;/p&gt;
&lt;p/&gt;
&lt;div id=&quot;syntaxplugin&quot; class=&quot;syntaxplugin&quot; style=&quot;border: 1px dashed #bbb; border-radius: 5px !important; overflow: auto; max-height: 30em;&quot;&gt;
&lt;table cellspacing=&quot;0&quot; cellpadding=&quot;0&quot; border=&quot;0&quot; width=&quot;100%&quot; style=&quot;font-size: 1em; line-height: 1.4em !important; font-weight: normal; font-style: normal; color: black;&quot;&gt;
		&lt;tbody &gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;  margin-top: 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;==7558== 128 bytes in 1 blocks are definitely lost in loss record 607 of 663&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;==7558==    at 0x4C2B0AF: malloc (vg_replace_malloc.c:296)&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;==7558==    by 0x598260B: bson_malloc (in /usr/lib64/libbson-1.0.so.0.0.0)&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;==7558==    by 0x5976EEC: _bson_grow (in /usr/lib64/libbson-1.0.so.0.0.0)&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;==7558==    by 0x5978307: _bson_append_bson_begin (in /usr/lib64/libbson-1.0.so.0.0.0)&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;==7558==    by 0x108C69: fill(_bson_t*, _bson_t*) (test.cc:14)&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   margin-bottom: 10px;  width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;==7558==    by 0x108DD1: main (test.cc:27)&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
			&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;p/&gt;</description>
                <environment></environment>
        <key id="227121">CDRIVER-812</key>
            <summary>Memory Leak When Using bson_reinit()</summary>
                <type id="4" iconUrl="https://jira.mongodb.org/secure/viewavatar?size=xsmall&amp;avatarId=14710&amp;avatarType=issuetype">Improvement</type>
                                            <priority id="4" iconUrl="https://jira.mongodb.org/images/icons/priorities/minor.svg">Minor - P4</priority>
                        <status id="6" iconUrl="https://jira.mongodb.org/images/icons/statuses/closed.png" description="The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.">Closed</status>
                    <statusCategory id="3" key="done" colorName="success"/>
                                    <resolution id="9">Done</resolution>
                                        <assignee username="jesse@mongodb.com">A. Jesse Jiryu Davis</assignee>
                                    <reporter username="mapx">Peng Xie</reporter>
                        <labels>
                    </labels>
                <created>Wed, 26 Aug 2015 09:52:03 +0000</created>
                <updated>Wed, 19 Oct 2016 22:33:30 +0000</updated>
                            <resolved>Wed, 9 Sep 2015 17:32:09 +0000</resolved>
                                    <version>1.1.10</version>
                                    <fixVersion>1.2.0</fixVersion>
                                    <component>docs</component>
                    <component>libbson</component>
                                        <votes>0</votes>
                                    <watches>2</watches>
                                                                                                                <comments>
                            <comment id="1131682" author="xgen-internal-githook" created="Mon, 11 Jan 2016 22:02:10 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;username&apos;: u&apos;ajdavis&apos;, u&apos;name&apos;: u&apos;A. Jesse Jiryu Davis&apos;, u&apos;email&apos;: u&apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message: Merge branch &apos;1.2.0-dev&apos;&lt;/p&gt;

&lt;ul&gt;
	&lt;li&gt;1.2.0-dev: (40 commits)&lt;br/&gt;
  &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-902&quot; title=&quot;1.2.0-rc0 Build failure on Solaris&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-902&quot;&gt;&lt;del&gt;CDRIVER-902&lt;/del&gt;&lt;/a&gt;: 1.2.0-rc0 Build failure on Solaris&lt;br/&gt;
  post-release bump&lt;br/&gt;
  1.2.0-rc0 Release&lt;br/&gt;
  &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-697&quot; title=&quot;Turn on basic err checking in release build&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-697&quot;&gt;&lt;del&gt;CDRIVER-697&lt;/del&gt;&lt;/a&gt; enable BSON_ASSERT in release build&lt;br/&gt;
  &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-697&quot; title=&quot;Turn on basic err checking in release build&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-697&quot;&gt;&lt;del&gt;CDRIVER-697&lt;/del&gt;&lt;/a&gt; delete bson_return macros&lt;br/&gt;
  &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-697&quot; title=&quot;Turn on basic err checking in release build&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-697&quot;&gt;&lt;del&gt;CDRIVER-697&lt;/del&gt;&lt;/a&gt; don&apos;t use bson_return_if macros&lt;br/&gt;
  &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-760&quot; title=&quot;Add mac os into list of supported os in libbson readme.md&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-760&quot;&gt;&lt;del&gt;CDRIVER-760&lt;/del&gt;&lt;/a&gt;: Add mac os into list of supported os in libbson readme.md&lt;br/&gt;
  &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-760&quot; title=&quot;Add mac os into list of supported os in libbson readme.md&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-760&quot;&gt;&lt;del&gt;CDRIVER-760&lt;/del&gt;&lt;/a&gt;: We also support OSX&lt;br/&gt;
  &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-832&quot; title=&quot;Extend runtime version-check functions&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-832&quot;&gt;&lt;del&gt;CDRIVER-832&lt;/del&gt;&lt;/a&gt; add bson_get_version / check_version&lt;br/&gt;
  &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-812&quot; title=&quot;Memory Leak When Using bson_reinit()&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-812&quot;&gt;&lt;del&gt;CDRIVER-812&lt;/del&gt;&lt;/a&gt; notes about bson_t initialization&lt;br/&gt;
  spelling&lt;br/&gt;
  typo in bson_utf8_validate.page&lt;br/&gt;
  style in bson_copy_to.page&lt;br/&gt;
  &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-712&quot; title=&quot;Unnecessary include in libbson bson-endian.h&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-712&quot;&gt;&lt;del&gt;CDRIVER-712&lt;/del&gt;&lt;/a&gt; bson-endian.h should not include bson-types.h.&lt;br/&gt;
  style in bson_uint32_to_string.page&lt;br/&gt;
  &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-698&quot; title=&quot;Unused macro in libbson&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-698&quot;&gt;&lt;del&gt;CDRIVER-698&lt;/del&gt;&lt;/a&gt; fix BSON_PTHREAD_ONCE_INIT_NEEDS_BRACES config&lt;br/&gt;
  missing test.json file&lt;br/&gt;
  add 1.1.7 release to NEWS on 1.2.0-dev&lt;br/&gt;
  ensure CMake defines config vars to 0 or 1 (cherry picked from commit 3048353)&lt;br/&gt;
  &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-700&quot; title=&quot;Unchecked error in bson_utf8_escape_for_json&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-700&quot;&gt;&lt;del&gt;CDRIVER-700&lt;/del&gt;&lt;/a&gt; unchecked err in bson_utf8_escape_for_json (cherry picked from commit c48a8fc)&lt;br/&gt;
  ...&lt;br/&gt;
Branch: 1.3.0-dev&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/libbson/commit/ac3b2a1c5b06b0dcad8e987a14ea89414dcef6a3&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/libbson/commit/ac3b2a1c5b06b0dcad8e987a14ea89414dcef6a3&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</comment>
                            <comment id="1131651" author="xgen-internal-githook" created="Mon, 11 Jan 2016 22:01:42 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;username&apos;: u&apos;ajdavis&apos;, u&apos;name&apos;: u&apos;A. Jesse Jiryu Davis&apos;, u&apos;email&apos;: u&apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-812&quot; title=&quot;Memory Leak When Using bson_reinit()&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-812&quot;&gt;&lt;del&gt;CDRIVER-812&lt;/del&gt;&lt;/a&gt; notes about bson_t initialization&lt;br/&gt;
Branch: 1.3.0-dev&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/libbson/commit/dec3b720a5dc3d7a375f779b697528de2e511916&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/libbson/commit/dec3b720a5dc3d7a375f779b697528de2e511916&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1065722" author="xgen-internal-githook" created="Tue, 20 Oct 2015 15:39:19 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;username&apos;: u&apos;ajdavis&apos;, u&apos;name&apos;: u&apos;A. Jesse Jiryu Davis&apos;, u&apos;email&apos;: u&apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message: Merge branch &apos;1.2.0-dev&apos;&lt;/p&gt;

&lt;ul&gt;
	&lt;li&gt;1.2.0-dev: (40 commits)&lt;br/&gt;
  &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-902&quot; title=&quot;1.2.0-rc0 Build failure on Solaris&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-902&quot;&gt;&lt;del&gt;CDRIVER-902&lt;/del&gt;&lt;/a&gt;: 1.2.0-rc0 Build failure on Solaris&lt;br/&gt;
  post-release bump&lt;br/&gt;
  1.2.0-rc0 Release&lt;br/&gt;
  &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-697&quot; title=&quot;Turn on basic err checking in release build&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-697&quot;&gt;&lt;del&gt;CDRIVER-697&lt;/del&gt;&lt;/a&gt; enable BSON_ASSERT in release build&lt;br/&gt;
  &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-697&quot; title=&quot;Turn on basic err checking in release build&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-697&quot;&gt;&lt;del&gt;CDRIVER-697&lt;/del&gt;&lt;/a&gt; delete bson_return macros&lt;br/&gt;
  &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-697&quot; title=&quot;Turn on basic err checking in release build&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-697&quot;&gt;&lt;del&gt;CDRIVER-697&lt;/del&gt;&lt;/a&gt; don&apos;t use bson_return_if macros&lt;br/&gt;
  &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-760&quot; title=&quot;Add mac os into list of supported os in libbson readme.md&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-760&quot;&gt;&lt;del&gt;CDRIVER-760&lt;/del&gt;&lt;/a&gt;: Add mac os into list of supported os in libbson readme.md&lt;br/&gt;
  &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-760&quot; title=&quot;Add mac os into list of supported os in libbson readme.md&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-760&quot;&gt;&lt;del&gt;CDRIVER-760&lt;/del&gt;&lt;/a&gt;: We also support OSX&lt;br/&gt;
  &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-832&quot; title=&quot;Extend runtime version-check functions&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-832&quot;&gt;&lt;del&gt;CDRIVER-832&lt;/del&gt;&lt;/a&gt; add bson_get_version / check_version&lt;br/&gt;
  &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-812&quot; title=&quot;Memory Leak When Using bson_reinit()&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-812&quot;&gt;&lt;del&gt;CDRIVER-812&lt;/del&gt;&lt;/a&gt; notes about bson_t initialization&lt;br/&gt;
  spelling&lt;br/&gt;
  typo in bson_utf8_validate.page&lt;br/&gt;
  style in bson_copy_to.page&lt;br/&gt;
  &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-712&quot; title=&quot;Unnecessary include in libbson bson-endian.h&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-712&quot;&gt;&lt;del&gt;CDRIVER-712&lt;/del&gt;&lt;/a&gt; bson-endian.h should not include bson-types.h.&lt;br/&gt;
  style in bson_uint32_to_string.page&lt;br/&gt;
  &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-698&quot; title=&quot;Unused macro in libbson&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-698&quot;&gt;&lt;del&gt;CDRIVER-698&lt;/del&gt;&lt;/a&gt; fix BSON_PTHREAD_ONCE_INIT_NEEDS_BRACES config&lt;br/&gt;
  missing test.json file&lt;br/&gt;
  add 1.1.7 release to NEWS on 1.2.0-dev&lt;br/&gt;
  ensure CMake defines config vars to 0 or 1 (cherry picked from commit 3048353)&lt;br/&gt;
  &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-700&quot; title=&quot;Unchecked error in bson_utf8_escape_for_json&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-700&quot;&gt;&lt;del&gt;CDRIVER-700&lt;/del&gt;&lt;/a&gt; unchecked err in bson_utf8_escape_for_json (cherry picked from commit c48a8fc)&lt;br/&gt;
  ...&lt;br/&gt;
Branch: debian&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/libbson/commit/ac3b2a1c5b06b0dcad8e987a14ea89414dcef6a3&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/libbson/commit/ac3b2a1c5b06b0dcad8e987a14ea89414dcef6a3&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</comment>
                            <comment id="1065691" author="xgen-internal-githook" created="Tue, 20 Oct 2015 15:38:52 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;username&apos;: u&apos;ajdavis&apos;, u&apos;name&apos;: u&apos;A. Jesse Jiryu Davis&apos;, u&apos;email&apos;: u&apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-812&quot; title=&quot;Memory Leak When Using bson_reinit()&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-812&quot;&gt;&lt;del&gt;CDRIVER-812&lt;/del&gt;&lt;/a&gt; notes about bson_t initialization&lt;br/&gt;
Branch: debian&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/libbson/commit/dec3b720a5dc3d7a375f779b697528de2e511916&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/libbson/commit/dec3b720a5dc3d7a375f779b697528de2e511916&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1054655" author="xgen-internal-githook" created="Wed, 7 Oct 2015 21:59:57 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;username&apos;: u&apos;ajdavis&apos;, u&apos;name&apos;: u&apos;A. Jesse Jiryu Davis&apos;, u&apos;email&apos;: u&apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message: Merge branch &apos;1.2.0-dev&apos;&lt;/p&gt;

&lt;ul&gt;
	&lt;li&gt;1.2.0-dev: (40 commits)&lt;br/&gt;
  &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-902&quot; title=&quot;1.2.0-rc0 Build failure on Solaris&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-902&quot;&gt;&lt;del&gt;CDRIVER-902&lt;/del&gt;&lt;/a&gt;: 1.2.0-rc0 Build failure on Solaris&lt;br/&gt;
  post-release bump&lt;br/&gt;
  1.2.0-rc0 Release&lt;br/&gt;
  &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-697&quot; title=&quot;Turn on basic err checking in release build&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-697&quot;&gt;&lt;del&gt;CDRIVER-697&lt;/del&gt;&lt;/a&gt; enable BSON_ASSERT in release build&lt;br/&gt;
  &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-697&quot; title=&quot;Turn on basic err checking in release build&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-697&quot;&gt;&lt;del&gt;CDRIVER-697&lt;/del&gt;&lt;/a&gt; delete bson_return macros&lt;br/&gt;
  &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-697&quot; title=&quot;Turn on basic err checking in release build&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-697&quot;&gt;&lt;del&gt;CDRIVER-697&lt;/del&gt;&lt;/a&gt; don&apos;t use bson_return_if macros&lt;br/&gt;
  &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-760&quot; title=&quot;Add mac os into list of supported os in libbson readme.md&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-760&quot;&gt;&lt;del&gt;CDRIVER-760&lt;/del&gt;&lt;/a&gt;: Add mac os into list of supported os in libbson readme.md&lt;br/&gt;
  &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-760&quot; title=&quot;Add mac os into list of supported os in libbson readme.md&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-760&quot;&gt;&lt;del&gt;CDRIVER-760&lt;/del&gt;&lt;/a&gt;: We also support OSX&lt;br/&gt;
  &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-832&quot; title=&quot;Extend runtime version-check functions&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-832&quot;&gt;&lt;del&gt;CDRIVER-832&lt;/del&gt;&lt;/a&gt; add bson_get_version / check_version&lt;br/&gt;
  &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-812&quot; title=&quot;Memory Leak When Using bson_reinit()&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-812&quot;&gt;&lt;del&gt;CDRIVER-812&lt;/del&gt;&lt;/a&gt; notes about bson_t initialization&lt;br/&gt;
  spelling&lt;br/&gt;
  typo in bson_utf8_validate.page&lt;br/&gt;
  style in bson_copy_to.page&lt;br/&gt;
  &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-712&quot; title=&quot;Unnecessary include in libbson bson-endian.h&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-712&quot;&gt;&lt;del&gt;CDRIVER-712&lt;/del&gt;&lt;/a&gt; bson-endian.h should not include bson-types.h.&lt;br/&gt;
  style in bson_uint32_to_string.page&lt;br/&gt;
  &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-698&quot; title=&quot;Unused macro in libbson&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-698&quot;&gt;&lt;del&gt;CDRIVER-698&lt;/del&gt;&lt;/a&gt; fix BSON_PTHREAD_ONCE_INIT_NEEDS_BRACES config&lt;br/&gt;
  missing test.json file&lt;br/&gt;
  add 1.1.7 release to NEWS on 1.2.0-dev&lt;br/&gt;
  ensure CMake defines config vars to 0 or 1 (cherry picked from commit 3048353)&lt;br/&gt;
  &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-700&quot; title=&quot;Unchecked error in bson_utf8_escape_for_json&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-700&quot;&gt;&lt;del&gt;CDRIVER-700&lt;/del&gt;&lt;/a&gt; unchecked err in bson_utf8_escape_for_json (cherry picked from commit c48a8fc)&lt;br/&gt;
  ...&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/libbson/commit/ac3b2a1c5b06b0dcad8e987a14ea89414dcef6a3&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/libbson/commit/ac3b2a1c5b06b0dcad8e987a14ea89414dcef6a3&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</comment>
                            <comment id="1054632" author="xgen-internal-githook" created="Wed, 7 Oct 2015 21:59:35 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;username&apos;: u&apos;ajdavis&apos;, u&apos;name&apos;: u&apos;A. Jesse Jiryu Davis&apos;, u&apos;email&apos;: u&apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-812&quot; title=&quot;Memory Leak When Using bson_reinit()&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-812&quot;&gt;&lt;del&gt;CDRIVER-812&lt;/del&gt;&lt;/a&gt; notes about bson_t initialization&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/libbson/commit/dec3b720a5dc3d7a375f779b697528de2e511916&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/libbson/commit/dec3b720a5dc3d7a375f779b697528de2e511916&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1054578" author="xgen-internal-githook" created="Wed, 7 Oct 2015 21:36:32 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;username&apos;: u&apos;ajdavis&apos;, u&apos;name&apos;: u&apos;A. Jesse Jiryu Davis&apos;, u&apos;email&apos;: u&apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message: Merge branch &apos;1.2.0-dev&apos;&lt;/p&gt;

&lt;ul&gt;
	&lt;li&gt;1.2.0-dev: (40 commits)&lt;br/&gt;
  &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-902&quot; title=&quot;1.2.0-rc0 Build failure on Solaris&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-902&quot;&gt;&lt;del&gt;CDRIVER-902&lt;/del&gt;&lt;/a&gt;: 1.2.0-rc0 Build failure on Solaris&lt;br/&gt;
  post-release bump&lt;br/&gt;
  1.2.0-rc0 Release&lt;br/&gt;
  &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-697&quot; title=&quot;Turn on basic err checking in release build&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-697&quot;&gt;&lt;del&gt;CDRIVER-697&lt;/del&gt;&lt;/a&gt; enable BSON_ASSERT in release build&lt;br/&gt;
  &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-697&quot; title=&quot;Turn on basic err checking in release build&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-697&quot;&gt;&lt;del&gt;CDRIVER-697&lt;/del&gt;&lt;/a&gt; delete bson_return macros&lt;br/&gt;
  &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-697&quot; title=&quot;Turn on basic err checking in release build&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-697&quot;&gt;&lt;del&gt;CDRIVER-697&lt;/del&gt;&lt;/a&gt; don&apos;t use bson_return_if macros&lt;br/&gt;
  &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-760&quot; title=&quot;Add mac os into list of supported os in libbson readme.md&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-760&quot;&gt;&lt;del&gt;CDRIVER-760&lt;/del&gt;&lt;/a&gt;: Add mac os into list of supported os in libbson readme.md&lt;br/&gt;
  &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-760&quot; title=&quot;Add mac os into list of supported os in libbson readme.md&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-760&quot;&gt;&lt;del&gt;CDRIVER-760&lt;/del&gt;&lt;/a&gt;: We also support OSX&lt;br/&gt;
  &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-832&quot; title=&quot;Extend runtime version-check functions&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-832&quot;&gt;&lt;del&gt;CDRIVER-832&lt;/del&gt;&lt;/a&gt; add bson_get_version / check_version&lt;br/&gt;
  &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-812&quot; title=&quot;Memory Leak When Using bson_reinit()&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-812&quot;&gt;&lt;del&gt;CDRIVER-812&lt;/del&gt;&lt;/a&gt; notes about bson_t initialization&lt;br/&gt;
  spelling&lt;br/&gt;
  typo in bson_utf8_validate.page&lt;br/&gt;
  style in bson_copy_to.page&lt;br/&gt;
  &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-712&quot; title=&quot;Unnecessary include in libbson bson-endian.h&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-712&quot;&gt;&lt;del&gt;CDRIVER-712&lt;/del&gt;&lt;/a&gt; bson-endian.h should not include bson-types.h.&lt;br/&gt;
  style in bson_uint32_to_string.page&lt;br/&gt;
  &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-698&quot; title=&quot;Unused macro in libbson&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-698&quot;&gt;&lt;del&gt;CDRIVER-698&lt;/del&gt;&lt;/a&gt; fix BSON_PTHREAD_ONCE_INIT_NEEDS_BRACES config&lt;br/&gt;
  missing test.json file&lt;br/&gt;
  add 1.1.7 release to NEWS on 1.2.0-dev&lt;br/&gt;
  ensure CMake defines config vars to 0 or 1 (cherry picked from commit 3048353)&lt;br/&gt;
  &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-700&quot; title=&quot;Unchecked error in bson_utf8_escape_for_json&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-700&quot;&gt;&lt;del&gt;CDRIVER-700&lt;/del&gt;&lt;/a&gt; unchecked err in bson_utf8_escape_for_json (cherry picked from commit c48a8fc)&lt;br/&gt;
  ...&lt;br/&gt;
Branch: r1.2&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/libbson/commit/ac3b2a1c5b06b0dcad8e987a14ea89414dcef6a3&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/libbson/commit/ac3b2a1c5b06b0dcad8e987a14ea89414dcef6a3&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</comment>
                            <comment id="1025434" author="xgen-internal-githook" created="Wed, 9 Sep 2015 17:31:59 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;username&apos;: u&apos;ajdavis&apos;, u&apos;name&apos;: u&apos;A. Jesse Jiryu Davis&apos;, u&apos;email&apos;: u&apos;jesse@mongodb.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-812&quot; title=&quot;Memory Leak When Using bson_reinit()&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-812&quot;&gt;&lt;del&gt;CDRIVER-812&lt;/del&gt;&lt;/a&gt; notes about bson_t initialization&lt;br/&gt;
Branch: 1.2.0-dev&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/libbson/commit/dec3b720a5dc3d7a375f779b697528de2e511916&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/libbson/commit/dec3b720a5dc3d7a375f779b697528de2e511916&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1016586" author="jesse" created="Fri, 28 Aug 2015 01:52:46 +0000"  >&lt;p&gt;bson_copy_to has the right kind of guidance that bson_append_document_begin needs:&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://api.mongodb.org/libbson/current/bson_copy_to.html&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://api.mongodb.org/libbson/current/bson_copy_to.html&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1016328" author="jesse" created="Thu, 27 Aug 2015 20:13:52 +0000"  >&lt;p&gt;To resolve this ticket, I&apos;m going to update the docs for bson_reinit and for bson_append_document_begin. The bson_reinit will describe the stack vs. malloc&apos;ed buffer distinction and note that bson_reinit doesn&apos;t free the buffer; you still must call bson_destroy to free it.&lt;/p&gt;

&lt;p&gt;If the API is used correctly then the current documentation is still accurate:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;The bson_reinit() function shall be equivalent to calling bson_destroy() and bson_init().&lt;/p&gt;

&lt;p&gt;However, if the bson_t structure contains a malloc()&apos;d buffer, it may be reused.&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;... but a more thorough note might&apos;ve helped you understand the cause of your leak.&lt;/p&gt;

&lt;p&gt;I&apos;ll update the doc for bson_append_document_begin. Currently it just says:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;child: A bson_t to be initialized as the sub-document.&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;... but that could much more prominently warn that &quot;child&quot; must &lt;b&gt;not&lt;/b&gt; be initialized before passing it to bson_append_document_begin.&lt;/p&gt;</comment>
                            <comment id="1016325" author="jesse" created="Thu, 27 Aug 2015 20:09:53 +0000"  >&lt;p&gt;I can understand your point that the documentation is incomplete. Here&apos;s what happens:&lt;/p&gt;

&lt;ol&gt;
	&lt;li&gt;You initialized the bson_t object &quot;bson&quot;. At first, it has no malloc&apos;ed buffer, it only has a small internal buffer that&apos;s included in the object itself on the stack&lt;/li&gt;
	&lt;li&gt;You add enough fields to &quot;bson&quot; that it outgrows its internal buffer and mallocs a buffer for itself on the heap&lt;/li&gt;
	&lt;li&gt;You call bson_reinit on &quot;bson&quot;, which clears its fields but does &lt;b&gt;not&lt;/b&gt; waste time freeing the malloc&apos;ed buffer. Instead it keeps that buffer available to add new fields to, until you call bson_destroy on &quot;bson&quot;.&lt;/li&gt;
	&lt;li&gt;Then you call bson_append_document_begin with &quot;bson&quot; as the second argument (the argument named &quot;child&quot;). bson_append_document_begin &lt;a href=&quot;http://api.mongodb.org/libbson/current/bson_append_document_begin.html&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;expects an &lt;b&gt;uninitialized&lt;/b&gt; bson_t as the second argument&lt;/a&gt;, so it overwrites its internal structure without checking if there&apos;s a malloc&apos;ed buffer to free.&lt;/li&gt;
	&lt;li&gt;Thus the malloc&apos;ed buffer is forgotten and leaked, even if you call bson_destroy on &quot;bson&quot; at the end.&lt;/li&gt;
&lt;/ol&gt;


&lt;p&gt;On the other hand, if in step 3 you destroy and init &quot;bson&quot; instead of bson_reinit, that actually spends the time freeing the malloc&apos;ed buffer and reinitializing &quot;bson&quot; with the stack-based internal buffer, just as at the beginning.&lt;/p&gt;

&lt;p&gt;It&apos;s still technically incorrect to pass an initialized bson_t as the second argument to bson_append_document_begin, but in this second scenario it doesn&apos;t cause a leak because the bson_t has no malloc&apos;ed buffer any more.&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10012">
                    <name>Related</name>
                                                                <inwardlinks description="is related to">
                                        <issuelink>
            <issuekey id="227106">CDRIVER-811</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_15850" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|hrf7p3:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10558" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>9223372036854775807</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                    <customfield id="customfield_10557" key="com.pyxis.greenhopper.jira:gh-sprint">
                        <customfieldname>Sprint</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue id="699">C Driver 2015Q2 sprint 7</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            </customfields>
    </item>
</channel>
</rss>