зеркало из https://github.com/microsoft/git.git
Fix sed string regex escaping in module_name.
When escaping a string to be used as a sed regex, it is important to only escape active characters. Escaping other characters is undefined according to POSIX, and in practice leads to issues with extensions such as GNU sed's \+. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Родитель
b5e960b108
Коммит
4f2e94c0f7
|
@ -47,7 +47,7 @@ get_repo_base() {
|
|||
module_name()
|
||||
{
|
||||
# Do we have "submodule.<something>.path = $1" defined in .gitmodules file?
|
||||
re=$(printf '%s' "$1" | sed -e 's/\([^a-zA-Z0-9_]\)/\\\1/g')
|
||||
re=$(printf '%s' "$1" | sed -e 's/[].[^$\\*]/\\&/g')
|
||||
name=$( GIT_CONFIG=.gitmodules \
|
||||
git config --get-regexp '^submodule\..*\.path$' |
|
||||
sed -n -e 's|^submodule\.\(.*\)\.path '"$re"'$|\1|p' )
|
||||
|
|
Загрузка…
Ссылка в новой задаче