# Re: \[PATCH\] multi-pack-index: fix --object-dir from outside repo

- From: Johannes Berg \<johannes@sipsolutions.net\>
- Date: 2021-08-23 08:10:24 
- List: git
- Page: https://ratatoskr.run/git/2021/08/7899922
- Thread: https://ratatoskr.run/git/2021/08/7899921/t.md

```text
On Mon, 2021-08-23 at 01:05 -0700, Junio C Hamano wrote:
> Johannes Berg [ref] writes:
> 
> > I just needed to go outside the current test git directory, the tests
> > are running in a way that the current working directory is already the
> > git tree I'm operating in.
> > 
> > > Even if you mean to use "cd",
> > > please do so within a sub-shell.
> > 
> > I thought about it, but clearly all the tests are run in a sub-shell, so
> > it didn't seem necessary? But happy to change, I don't really care
> > either way.
> 
> Please learn to care before you write your next test, then ;-)

Hey now, I'm fixing your segfaults ;-)

> These tests are not run in a sub-shell; they are eval'ed, so that
> the assignment they make to variables can persist and affect the
> next test piece.

Makes sense. FWIW, the test *did* restore the CWD so things worked, and
subshells are actually ugly (need to import test-lib-functions.sh again
if you want to use those), but I'll make it work somehow.


More importantly, how do you feel about the "cd /"?

The tests are always run in a place where there's a parent git folder
(even if it's git itself), so you cannot reproduce the segfault in a
test without the "cd /", though I guess "cd /tmp" would also work or
something, but "cd /" felt pretty safe, hopefully not many people have
"/.git" on their system.

johannes

```
