<feed xmlns='http://www.w3.org/2005/Atom'>
<title>git/builtin/replace.c, branch v2.15.2</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/git/git.git/
</subtitle>
<id>https://git.shady.money/git/atom?h=v2.15.2</id>
<link rel='self' href='https://git.shady.money/git/atom?h=v2.15.2'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/'/>
<updated>2017-08-21T04:52:08Z</updated>
<entry>
<title>sha1_file: convert index_fd to struct object_id</title>
<updated>2017-08-21T04:52:08Z</updated>
<author>
<name>Patryk Obara</name>
<email>patryk.obara@gmail.com</email>
</author>
<published>2017-08-20T20:09:29Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=e3506559d476ccf94c923c30a15500b46204e146'/>
<id>urn:sha1:e3506559d476ccf94c923c30a15500b46204e146</id>
<content type='text'>
Convert all remaining callers as well.

Signed-off-by: Patryk Obara &lt;patryk.obara@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>sha1_name: convert get_sha1* to get_oid*</title>
<updated>2017-07-17T20:54:51Z</updated>
<author>
<name>brian m. carlson</name>
<email>sandals@crustytoothpaste.net</email>
</author>
<published>2017-07-13T23:49:28Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=e82caf384bb3c7f41ec5419de04e6493d7b0f4a5'/>
<id>urn:sha1:e82caf384bb3c7f41ec5419de04e6493d7b0f4a5</id>
<content type='text'>
Now that all the callers of get_sha1 directly or indirectly use struct
object_id, rename the functions starting with get_sha1 to start with
get_oid.  Convert the internals in sha1_name.c to use struct object_id
as well, and eliminate explicit length checks where possible.  Convert a
use of 40 in get_oid_basic to GIT_SHA1_HEXSZ.

Outside of sha1_name.c and cache.h, this transition was made with the
following semantic patch:

@@
expression E1, E2;
@@
- get_sha1(E1, E2.hash)
+ get_oid(E1, &amp;E2)

@@
expression E1, E2;
@@
- get_sha1(E1, E2-&gt;hash)
+ get_oid(E1, E2)

@@
expression E1, E2;
@@
- get_sha1_committish(E1, E2.hash)
+ get_oid_committish(E1, &amp;E2)

@@
expression E1, E2;
@@
- get_sha1_committish(E1, E2-&gt;hash)
+ get_oid_committish(E1, E2)

@@
expression E1, E2;
@@
- get_sha1_treeish(E1, E2.hash)
+ get_oid_treeish(E1, &amp;E2)

@@
expression E1, E2;
@@
- get_sha1_treeish(E1, E2-&gt;hash)
+ get_oid_treeish(E1, E2)

@@
expression E1, E2;
@@
- get_sha1_commit(E1, E2.hash)
+ get_oid_commit(E1, &amp;E2)

@@
expression E1, E2;
@@
- get_sha1_commit(E1, E2-&gt;hash)
+ get_oid_commit(E1, E2)

@@
expression E1, E2;
@@
- get_sha1_tree(E1, E2.hash)
+ get_oid_tree(E1, &amp;E2)

@@
expression E1, E2;
@@
- get_sha1_tree(E1, E2-&gt;hash)
+ get_oid_tree(E1, E2)

@@
expression E1, E2;
@@
- get_sha1_blob(E1, E2.hash)
+ get_oid_blob(E1, &amp;E2)

@@
expression E1, E2;
@@
- get_sha1_blob(E1, E2-&gt;hash)
+ get_oid_blob(E1, E2)

@@
expression E1, E2, E3, E4;
@@
- get_sha1_with_context(E1, E2, E3.hash, E4)
+ get_oid_with_context(E1, E2, &amp;E3, E4)

@@
expression E1, E2, E3, E4;
@@
- get_sha1_with_context(E1, E2, E3-&gt;hash, E4)
+ get_oid_with_context(E1, E2, E3, E4)

Signed-off-by: brian m. carlson &lt;sandals@crustytoothpaste.net&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'ab/wildmatch'</title>
<updated>2017-07-10T20:42:51Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2017-07-10T20:42:51Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=0c6435a4d6a45d5947ed4f3a1f63172cdca00d36'/>
<id>urn:sha1:0c6435a4d6a45d5947ed4f3a1f63172cdca00d36</id>
<content type='text'>
Minor code cleanup.

* ab/wildmatch:
  wildmatch: remove unused wildopts parameter
</content>
</entry>
<entry>
<title>Merge branch 'bw/config-h'</title>
<updated>2017-06-24T21:28:41Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2017-06-24T21:28:40Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=f31d23a399d557d687266b4375a0436f920cc051'/>
<id>urn:sha1:f31d23a399d557d687266b4375a0436f920cc051</id>
<content type='text'>
Fix configuration codepath to pay proper attention to commondir
that is used in multi-worktree situation, and isolate config API
into its own header file.

* bw/config-h:
  config: don't implicitly use gitdir or commondir
  config: respect commondir
  setup: teach discover_git_directory to respect the commondir
  config: don't include config.h by default
  config: remove git_config_iter
  config: create config.h
</content>
</entry>
<entry>
<title>wildmatch: remove unused wildopts parameter</title>
<updated>2017-06-24T01:27:07Z</updated>
<author>
<name>Ævar Arnfjörð Bjarmason</name>
<email>avarab@gmail.com</email>
</author>
<published>2017-06-22T21:38:08Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=55d3426929d4d8c3dec402cabe6fb1bf27d6abad'/>
<id>urn:sha1:55d3426929d4d8c3dec402cabe6fb1bf27d6abad</id>
<content type='text'>
Remove the unused wildopts placeholder struct from being passed to all
wildmatch() invocations, or rather remove all the boilerplate NULL
parameters.

This parameter was added back in commit 9b3497cab9 ("wildmatch: rename
constants and update prototype", 2013-01-01) as a placeholder for
future use. Over 4 years later nothing has made use of it, let's just
remove it. It can be added in the future if we find some reason to
start using such a parameter.

Signed-off-by: Ævar Arnfjörð Bjarmason &lt;avarab@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>config: don't include config.h by default</title>
<updated>2017-06-15T19:56:22Z</updated>
<author>
<name>Brandon Williams</name>
<email>bmwill@google.com</email>
</author>
<published>2017-06-14T18:07:36Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=b2141fc1d20e659810245ec6ca1c143c60e033ec'/>
<id>urn:sha1:b2141fc1d20e659810245ec6ca1c143c60e033ec</id>
<content type='text'>
Stop including config.h by default in cache.h.  Instead only include
config.h in those files which require use of the config system.

Signed-off-by: Brandon Williams &lt;bmwill@google.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Convert lookup_tag to struct object_id</title>
<updated>2017-05-08T06:12:57Z</updated>
<author>
<name>brian m. carlson</name>
<email>sandals@crustytoothpaste.net</email>
</author>
<published>2017-05-06T22:10:19Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=d3101b533d365825f52d8e5e52328702acbc8e3a'/>
<id>urn:sha1:d3101b533d365825f52d8e5e52328702acbc8e3a</id>
<content type='text'>
Convert lookup_tag to take a pointer to struct object_id.

Signed-off-by: brian m. carlson &lt;sandals@crustytoothpaste.net&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Convert lookup_commit* to struct object_id</title>
<updated>2017-05-08T06:12:57Z</updated>
<author>
<name>brian m. carlson</name>
<email>sandals@crustytoothpaste.net</email>
</author>
<published>2017-05-06T22:10:10Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=bc83266abe36905cade4719cbaeb8a62d0a382da'/>
<id>urn:sha1:bc83266abe36905cade4719cbaeb8a62d0a382da</id>
<content type='text'>
Convert lookup_commit, lookup_commit_or_die,
lookup_commit_reference, and lookup_commit_reference_gently to take
struct object_id arguments.

Introduce a temporary in parse_object buffer in order to convert this
function.  This is required since in order to convert parse_object and
parse_object_buffer, lookup_commit_reference_gently and
lookup_commit_or_die would need to be converted.  Not introducing a
temporary would therefore require that lookup_commit_or_die take a
struct object_id *, but lookup_commit would take unsigned char *,
leaving a confusing and hard-to-use interface.

parse_object_buffer will lose this temporary in a later patch.

This commit was created with manual changes to commit.c, commit.h, and
object.c, plus the following semantic patch:

@@
expression E1, E2;
@@
- lookup_commit_reference_gently(E1.hash, E2)
+ lookup_commit_reference_gently(&amp;E1, E2)

@@
expression E1, E2;
@@
- lookup_commit_reference_gently(E1-&gt;hash, E2)
+ lookup_commit_reference_gently(E1, E2)

@@
expression E1;
@@
- lookup_commit_reference(E1.hash)
+ lookup_commit_reference(&amp;E1)

@@
expression E1;
@@
- lookup_commit_reference(E1-&gt;hash)
+ lookup_commit_reference(E1)

@@
expression E1;
@@
- lookup_commit(E1.hash)
+ lookup_commit(&amp;E1)

@@
expression E1;
@@
- lookup_commit(E1-&gt;hash)
+ lookup_commit(E1)

@@
expression E1, E2;
@@
- lookup_commit_or_die(E1.hash, E2)
+ lookup_commit_or_die(&amp;E1, E2)

@@
expression E1, E2;
@@
- lookup_commit_or_die(E1-&gt;hash, E2)
+ lookup_commit_or_die(E1, E2)

Signed-off-by: brian m. carlson &lt;sandals@crustytoothpaste.net&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>replace: plug a memory leak</title>
<updated>2017-04-18T04:56:54Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2017-04-18T04:56:54Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=372b050b6bd4bd3256e6fa21ab0fef47dd768d98'/>
<id>urn:sha1:372b050b6bd4bd3256e6fa21ab0fef47dd768d98</id>
<content type='text'>
Recent update to for_each_replace_name() to make it use a strbuf in
place of a fixed buffer forgot to release the memory held by the
strbuf before leaving the function.

Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>avoid using fixed PATH_MAX buffers for refs</title>
<updated>2017-03-30T21:59:50Z</updated>
<author>
<name>Jeff King</name>
<email>peff@peff.net</email>
</author>
<published>2017-03-28T19:46:30Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=7f897b6f176319ec0f490d286c3fee11187d7095'/>
<id>urn:sha1:7f897b6f176319ec0f490d286c3fee11187d7095</id>
<content type='text'>
Many functions which handle refs use a PATH_MAX-sized buffer
to do so. This is mostly reasonable as we have to write
loose refs into the filesystem, and at least on Linux the 4K
PATH_MAX is big enough that nobody would care. But:

  1. The static PATH_MAX is not always the filesystem limit.

  2. On other platforms, PATH_MAX may be much smaller.

  3. As we move to alternate ref storage, we won't be bound
     by filesystem limits.

Let's convert these to heap buffers so we don't have to
worry about truncation or size limits.

We may want to eventually constrain ref lengths for sanity
and to prevent malicious names, but we should do so
consistently across all platforms, and in a central place
(like the ref code).

Signed-off-by: Jeff King &lt;peff@peff.net&gt;
</content>
</entry>
</feed>
