<feed xmlns='http://www.w3.org/2005/Atom'>
<title>git/t, branch gitk-resize-error</title>
<subtitle>Fork of git SCM with my patches.</subtitle>
<id>http://git.kilabit.info/git/atom?h=gitk-resize-error</id>
<link rel='self' href='http://git.kilabit.info/git/atom?h=gitk-resize-error'/>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/git/'/>
<updated>2022-01-29T00:45:52Z</updated>
<entry>
<title>Merge branch 'en/keep-cwd' into maint</title>
<updated>2022-01-29T00:45:52Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2022-01-29T00:45:39Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/git/commit/?id=f120b65cd41c0e93432af1a36c82fd3a8d39ccd4'/>
<id>urn:sha1:f120b65cd41c0e93432af1a36c82fd3a8d39ccd4</id>
<content type='text'>
Fix a regression in 2.35 that roke the use of "rebase" and "stash"
in a secondary worktree.

* en/keep-cwd:
  sequencer, stash: fix running from worktree subdir
</content>
</entry>
<entry>
<title>sequencer, stash: fix running from worktree subdir</title>
<updated>2022-01-26T20:01:54Z</updated>
<author>
<name>Elijah Newren</name>
<email>newren@gmail.com</email>
</author>
<published>2022-01-26T01:43:45Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/git/commit/?id=ff5b7913f0af62c26682b0376d0aa2d7f5d74b2e'/>
<id>urn:sha1:ff5b7913f0af62c26682b0376d0aa2d7f5d74b2e</id>
<content type='text'>
In commits bc3ae46b42 ("rebase: do not attempt to remove
startup_info-&gt;original_cwd", 2021-12-09) and 0fce211ccc ("stash: do not
attempt to remove startup_info-&gt;original_cwd", 2021-12-09), we wanted to
allow the subprocess to know which directory the parent process was
running from, so that the subprocess could protect it.  However...

When run from a non-main worktree, setup_git_directory() will note
that the discovered git directory
(/PATH/TO/.git/worktree/non-main-worktree) does not match
DEFAULT_GIT_DIR_ENVIRONMENT (see setup_discovered_git_dir()), and
decide to set GIT_DIR in the environment.  This matters because...

Whenever git is run with the GIT_DIR environment variable set, and
GIT_WORK_TREE not set, it presumes that '.' is the working tree.  So...

This combination results in the subcommand being very confused about
the working tree.  Fix it by also setting the GIT_WORK_TREE environment
variable along with setting cmd.dir.

A possibly more involved fix we could consider for later would be to
make setup.c set GIT_WORK_TREE whenever (a) it discovers both the git
directory and the working tree and (b) it decides to set GIT_DIR in the
environment.  I did not attempt that here as such would be too big of a
change for a 2.35.1 release.

Test-case-by: Glen Choo &lt;chooglen@google.com&gt;
Signed-off-by: Elijah Newren &lt;newren@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'ab/checkout-branch-info-leakfix'</title>
<updated>2022-01-24T17:14:46Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2022-01-24T17:14:46Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/git/commit/?id=c6e19e47a60c0174f805db8e1624db38ff889523'/>
<id>urn:sha1:c6e19e47a60c0174f805db8e1624db38ff889523</id>
<content type='text'>
We added an unrelated sanity checking that leads to a BUG() while
plugging a leak, which triggered in a repository with symrefs in
the local branch namespace that point at a ref outside.  Partially
revert the change to avoid triggering the BUG().

* ab/checkout-branch-info-leakfix:
  checkout: avoid BUG() when hitting a broken repository
</content>
</entry>
<entry>
<title>checkout: avoid BUG() when hitting a broken repository</title>
<updated>2022-01-22T01:04:50Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2022-01-22T00:58:30Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/git/commit/?id=519947b69a9ea1461d5f5afc762823835295b3b2'/>
<id>urn:sha1:519947b69a9ea1461d5f5afc762823835295b3b2</id>
<content type='text'>
When 9081a421 (checkout: fix "branch info" memory leaks, 2021-11-16)
cleaned up existing memory leaks, we added an unrelated sanity check
to ensure that a local branch is truly local and not a symref to
elsewhere that dies with BUG() otherwise.  This was misguided in two
ways.  First of all, such a tightening did not belong to a leak-fix
patch.  And the condition it detected was *not* a bug in our program
but a problem in user data, where warning() or die() would have been
more appropriate.

As the condition is not fatal (the result of computing the local
branch name in the code that is involved in the faulty check is only
used as a textual label for the commit), let's revert the code to
the original state, i.e. strip "refs/heads/" to compute the local
branch name if possible, and otherwise leave it NULL.  The consumer
of the information in merge_working_tree() is prepared to see NULL
in there and act accordingly.

cf. https://bugzilla.redhat.com/show_bug.cgi?id=2042920

Reported-by: Petr Šplíchal &lt;psplicha@redhat.com&gt;
Reported-by: Todd Zullinger &lt;tmz@pobox.com&gt;
Helped-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>Merge branch 'js/t1450-making-it-writable-does-not-need-full-posixperm'</title>
<updated>2022-01-14T23:25:15Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2022-01-14T23:25:15Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/git/commit/?id=36b65715a4132f81250a97aad7800abcc2d34d73'/>
<id>urn:sha1:36b65715a4132f81250a97aad7800abcc2d34d73</id>
<content type='text'>
Test fix.

* js/t1450-making-it-writable-does-not-need-full-posixperm:
  t1450-fsck: exec-bit is not needed to make loose object writable
</content>
</entry>
<entry>
<title>t1450-fsck: exec-bit is not needed to make loose object writable</title>
<updated>2022-01-13T20:36:12Z</updated>
<author>
<name>Johannes Sixt</name>
<email>j6t@kdbg.org</email>
</author>
<published>2022-01-13T20:28:45Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/git/commit/?id=59069107948bc87b8b6d46d49a52df410c4a8745'/>
<id>urn:sha1:59069107948bc87b8b6d46d49a52df410c4a8745</id>
<content type='text'>
A test case wants to append stuff to a loose object file to ensure
that this kind of corruption is detected. To make a read-only loose
object file writable with chmod, it is not necessary to also make
it executable. Replace the bitmask 755 with the instruction +w to
request only the write bit and to also heed the umask. And get rid
of a POSIXPERM prerequisite, which is unnecessary for the test.

Signed-off-by: Johannes Sixt &lt;j6t@kdbg.org&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'fs/gpg-unknown-key-test-fix'</title>
<updated>2022-01-12T23:11:42Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2022-01-12T23:11:42Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/git/commit/?id=83ca08298e2b31b8b0528abab33d8472d2b7b8df'/>
<id>urn:sha1:83ca08298e2b31b8b0528abab33d8472d2b7b8df</id>
<content type='text'>
Test simplification.

* fs/gpg-unknown-key-test-fix:
  t/gpg: simplify test for unknown key
</content>
</entry>
<entry>
<title>Merge branch 'ma/windows-dynload-fix'</title>
<updated>2022-01-12T23:11:41Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2022-01-12T23:11:41Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/git/commit/?id=a4510f8106a65f42d4ecbe9b826f16e4ff9df6db'/>
<id>urn:sha1:a4510f8106a65f42d4ecbe9b826f16e4ff9df6db</id>
<content type='text'>
Fix calling dynamically loaded functions on Windows.

* ma/windows-dynload-fix:
  lazyload: use correct calling conventions
</content>
</entry>
<entry>
<title>Merge branch 'fs/ssh-signing-key-lifetime'</title>
<updated>2022-01-12T23:11:41Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2022-01-12T23:11:41Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/git/commit/?id=cde28af37b19e07139ebb6a355d742e763b7a235'/>
<id>urn:sha1:cde28af37b19e07139ebb6a355d742e763b7a235</id>
<content type='text'>
"git merge $signed_tag" started to drop the tag message from the
default merge message it uses by accident, which has been corrected.

* fs/ssh-signing-key-lifetime:
  fmt-merge-msg: prevent use-after-free with signed tags
</content>
</entry>
<entry>
<title>t/gpg: simplify test for unknown key</title>
<updated>2022-01-12T19:21:22Z</updated>
<author>
<name>Fabian Stelzer</name>
<email>fs@gigacodes.de</email>
</author>
<published>2022-01-12T12:07:57Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/git/commit/?id=0517f591ca290a14ee3e516e478e8d2b78b45822'/>
<id>urn:sha1:0517f591ca290a14ee3e516e478e8d2b78b45822</id>
<content type='text'>
To test for a key that is completely unknown to the keyring we need one
to sign the commit with. This was done by generating a new key and not
add it into the keyring. To avoid the key generation overhead and
problems where GPG did hang in CI during it, switch GNUPGHOME to the
empty $GNUPGHOME_NOT_USED instead, therefore making all used keys unknown
for this single `verify-commit` call.

Reported-by: Ævar Arnfjörð Bjarmason &lt;avarab@gmail.com&gt;
Signed-off-by: Fabian Stelzer &lt;fs@gigacodes.de&gt;
Reviewed-by: Taylor Blau &lt;me@ttaylorr.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
</feed>
