Stefan Beller <sbeller@xxxxxxxxxx> writes: > The new test replicates the previous test with the difference of executing > from a sub directory. By executing from a sub directory all we would > expect all displayed paths to be prefixed by '../'. -ECANTPARSE on the last sentence. Remove the first "all" perhaps? As this patch is no longer about a new test but is about a fix of a problem, for which a new test serves as a typical example, it sounds somewhat funny to start the log message with description of the test. > Prior to this patch the test would report > Entering 'nested1/nested2/../nested3' > instead of the expected > Entering '../nested1/nested2/nested3' > > because the prefix is put unconditionally in front and after that a > computed display path with is affected by `wt_prefix`. -ECANTPARSE even though I can guess what you want to say. > diff --git a/git-submodule.sh b/git-submodule.sh > index 43c68de..2838069 100755 > --- a/git-submodule.sh > +++ b/git-submodule.sh > @@ -417,10 +417,11 @@ cmd_foreach() > say "$(eval_gettext "Entering '\$prefix\$displaypath'")" > name=$(git submodule--helper name "$sm_path") > ( > - prefix="$prefix$sm_path/" > + prefix="$(relative_path $prefix$sm_path)/" What happens when prefix or sm_path has $IFS whitespace? Imitate the correct quoting you do three lines below, i.e. prefix=$(relative_path "$prefix$sm_path")/ > clear_local_git_env > cd "$sm_path" && > sm_path=$(relative_path "$sm_path") && > + wt_prefix= > # we make $path available to scripts ... > path=$sm_path && > if test $# -eq 1 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html