diff options
Diffstat (limited to 'eclass')
-rw-r--r-- | eclass/git-r3.eclass | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/eclass/git-r3.eclass b/eclass/git-r3.eclass index 42d6dbf6b32..957ff08c296 100644 --- a/eclass/git-r3.eclass +++ b/eclass/git-r3.eclass @@ -362,8 +362,13 @@ _git-r3_set_submodules() { submodule."${subname}".update) [[ ${upd} == none ]] && continue + # https://github.com/git/git/blob/master/refs.c#L39 + # for now, we just filter /. because of #572312 + local enc_subname=${subname//\/.//_} + [[ ${enc_subname} == .* ]] && enc_subname=_${enc_subname#.} + submodules+=( - "${subname}" + "${enc_subname}" "$(echo "${data}" | git config -f /dev/fd/0 \ submodule."${subname}".url || die)" "$(echo "${data}" | git config -f /dev/fd/0 \ |