<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/libgit2.git/src/iterator.c, branch ethomson/release_docs</title>
<subtitle>github.com: libgit2/libgit2.git
</subtitle>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/'/>
<entry>
<title>iterator: remove duplicate memset</title>
<updated>2019-08-27T08:48:26+00:00</updated>
<author>
<name>Patrick Steinhardt</name>
<email>ps@pks.im</email>
</author>
<published>2019-08-27T08:36:17+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=699de9c5f107e1ae127b9a9f5518d29f8864dfbe'/>
<id>699de9c5f107e1ae127b9a9f5518d29f8864dfbe</id>
<content type='text'>
When allocating new tree iterator frames, we zero out the allocated
memory twice. Remove one of the `memset` calls.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When allocating new tree iterator frames, we zero out the allocated
memory twice. Remove one of the `memset` calls.
</pre>
</div>
</content>
</entry>
<entry>
<title>iterator: avoid leaving partially initialized frame on stack</title>
<updated>2019-08-27T08:48:26+00:00</updated>
<author>
<name>Patrick Steinhardt</name>
<email>ps@pks.im</email>
</author>
<published>2019-08-27T08:36:20+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=9ca7a60e68d72d6e1da6eac519de48ecfca6d7f1'/>
<id>9ca7a60e68d72d6e1da6eac519de48ecfca6d7f1</id>
<content type='text'>
When allocating tree iterator entries, we use GIT_ERROR_ALLOC_CHECK` to
check whether the allocation has failed. The macro will cause the
function to immediately return, though, leaving behind a partially
initialized iterator frame.

Fix the issue by manually checking for memory allocation errors and
using `goto done` in case of an error, popping the iterator frame.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When allocating tree iterator entries, we use GIT_ERROR_ALLOC_CHECK` to
check whether the allocation has failed. The macro will cause the
function to immediately return, though, leaving behind a partially
initialized iterator frame.

Fix the issue by manually checking for memory allocation errors and
using `goto done` in case of an error, popping the iterator frame.
</pre>
</div>
</content>
</entry>
<entry>
<title>configuration: cvar -&gt; configmap</title>
<updated>2019-07-18T11:53:41+00:00</updated>
<author>
<name>Patrick Steinhardt</name>
<email>ps@pks.im</email>
</author>
<published>2019-07-18T11:53:41+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=658022c41affc7d9b5bd9b84b1d75ec909b820c6'/>
<id>658022c41affc7d9b5bd9b84b1d75ec909b820c6</id>
<content type='text'>
`cvar` is an unhelpful name.  Refactor its usage to `configmap` for more
clarity.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
`cvar` is an unhelpful name.  Refactor its usage to `configmap` for more
clarity.
</pre>
</div>
</content>
</entry>
<entry>
<title>iterator: make use the `GIT_CONTAINER_OF` macro</title>
<updated>2019-04-16T11:21:31+00:00</updated>
<author>
<name>Etienne Samson</name>
<email>samson.etienne@gmail.com</email>
</author>
<published>2019-04-05T13:05:10+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=431601f2922c47d5a9e4394589d076da78d6d146'/>
<id>431601f2922c47d5a9e4394589d076da78d6d146</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>iterator: cast filesystem iterator entry values explicitly</title>
<updated>2019-01-25T22:36:44+00:00</updated>
<author>
<name>Edward Thomson</name>
<email>ethomson@edwardthomson.com</email>
</author>
<published>2019-01-20T23:42:08+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=1d4ddb8ecf308b8b913dfbc5d6abb9996779808c'/>
<id>1d4ddb8ecf308b8b913dfbc5d6abb9996779808c</id>
<content type='text'>
The filesystem iterator takes `stat` data from disk and puts them into
index entries, which use 32 bit ints for time (the seconds portion) and
filesize.  However, on most systems these are not 32 bit, thus will
typically invoke a warning.

Most users ignore these fields entirely.  Diff and checkout code do use
the values, however only for the cache to determine if they should check
file modification.  Thus, this is not a critical error (and will cause a
hash recomputation at worst).
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The filesystem iterator takes `stat` data from disk and puts them into
index entries, which use 32 bit ints for time (the seconds portion) and
filesize.  However, on most systems these are not 32 bit, thus will
typically invoke a warning.

Most users ignore these fields entirely.  Diff and checkout code do use
the values, however only for the cache to determine if they should check
file modification.  Thus, this is not a critical error (and will cause a
hash recomputation at worst).
</pre>
</div>
</content>
</entry>
<entry>
<title>git_error: use new names in internal APIs and usage</title>
<updated>2019-01-22T22:30:35+00:00</updated>
<author>
<name>Edward Thomson</name>
<email>ethomson@edwardthomson.com</email>
</author>
<published>2018-12-27T19:47:34+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=f673e232afe22eb865cdc915e55a2df6493f0fbb'/>
<id>f673e232afe22eb865cdc915e55a2df6493f0fbb</id>
<content type='text'>
Move to the `git_error` name in the internal API for error-related
functions.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Move to the `git_error` name in the internal API for error-related
functions.
</pre>
</div>
</content>
</entry>
<entry>
<title>object_type: use new enumeration names</title>
<updated>2018-12-01T11:54:57+00:00</updated>
<author>
<name>Edward Thomson</name>
<email>ethomson@edwardthomson.com</email>
</author>
<published>2018-11-28T14:26:57+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=168fe39bea3368972a8b1a33d5908e73bc790c18'/>
<id>168fe39bea3368972a8b1a33d5908e73bc790c18</id>
<content type='text'>
Use the new object_type enumeration names within the codebase.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Use the new object_type enumeration names within the codebase.
</pre>
</div>
</content>
</entry>
<entry>
<title>iterator: remove unused function `tree_iterator_entry_cmp`</title>
<updated>2018-11-28T14:22:27+00:00</updated>
<author>
<name>Patrick Steinhardt</name>
<email>ps@pks.im</email>
</author>
<published>2018-11-21T11:07:23+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=b2af13f291c0971c9953fd6fc2f633ac25d6b13b'/>
<id>b2af13f291c0971c9953fd6fc2f633ac25d6b13b</id>
<content type='text'>
The function `tree_iterator_entry_cmp` has been introduced in commit be30387e8
(iterators: refactored tree iterator, 2016-02-25), but in fact it has never been
used at all. Remove it to avoid unused function warnings as soon as we re-enable
"-Wunused-functions".
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The function `tree_iterator_entry_cmp` has been introduced in commit be30387e8
(iterators: refactored tree iterator, 2016-02-25), but in fact it has never been
used at all. Remove it to avoid unused function warnings as soon as we re-enable
"-Wunused-functions".
</pre>
</div>
</content>
</entry>
<entry>
<title>iterator: introduce `git_iterator_foreach`</title>
<updated>2018-11-04T09:21:48+00:00</updated>
<author>
<name>Edward Thomson</name>
<email>ethomson@edwardthomson.com</email>
</author>
<published>2018-06-26T14:25:30+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=d54aa9aef7e8d4547c128428da87b0920f61bf68'/>
<id>d54aa9aef7e8d4547c128428da87b0920f61bf68</id>
<content type='text'>
Introduce a `git_iterator_foreach` helper function which invokes a
callback on all files for a given iterator.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Introduce a `git_iterator_foreach` helper function which invokes a
callback on all files for a given iterator.
</pre>
</div>
</content>
</entry>
<entry>
<title>iterator: optionally hash filesystem iterators</title>
<updated>2018-11-03T16:42:53+00:00</updated>
<author>
<name>Edward Thomson</name>
<email>ethomson@edwardthomson.com</email>
</author>
<published>2018-03-19T19:45:11+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=2b12dcf6d6971a622abe9730472dc373c0856d98'/>
<id>2b12dcf6d6971a622abe9730472dc373c0856d98</id>
<content type='text'>
Optionally hash the contents of files encountered in the filesystem or
working directory iterators.  This is not expected to be used in
production code paths, but may allow us to simplify some test contexts.

For working directory iterators, apply filters as appropriate, since we
have the context able to do it.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Optionally hash the contents of files encountered in the filesystem or
working directory iterators.  This is not expected to be used in
production code paths, but may allow us to simplify some test contexts.

For working directory iterators, apply filters as appropriate, since we
have the context able to do it.
</pre>
</div>
</content>
</entry>
</feed>
