From 25f523bbacb4374337f443f0ffd9b458aa328c50 Mon Sep 17 00:00:00 2001 From: Leah Rowe Date: Fri, 17 Oct 2025 22:40:29 +0100 Subject: get.sh: return clone_project if multi-tree this is the true fix, replacing the fixes previously reverted. the problem with the old fix was that it was a hack, and could result in the archived backup of a code repo being the wrong one; the destination was the one for the main repo, but what if we were cloning the backup? Signed-off-by: Leah Rowe --- include/get.sh | 20 +++++--------------- 1 file changed, 5 insertions(+), 15 deletions(-) (limited to 'include') diff --git a/include/get.sh b/include/get.sh index e3e4c311..9ab6956d 100644 --- a/include/get.sh +++ b/include/get.sh @@ -53,14 +53,13 @@ fetch_project() clone_project() { - # if loc is blank, don't create a target - # directory; just update the caches - loc="" if singletree "$project"; then loc="src/$project" - fi - if e "$loc" d missing; then + if [ -d "$loc" ]; then + return 0 + fi + remkdir "${tmpgit%/*}" git_prep "$url" "$bkup_url" \ "$xbmkpwd/config/$project/patches" "$loc" @@ -87,16 +86,7 @@ git_prep() x_ xbmkdir "${_loc%/*}" fi - if [ -z "$_loc" ]; then - # we only used git_prep to update caches, on - # a multi-tree project. tmpgit is useless now. - - x_ rm -Rf "$tmpgit" - else - # actual downloaded - - x_ mv "$tmpgit" "$_loc" - fi + x_ mv "$tmpgit" "$_loc" } fetch_submodule() -- cgit v1.2.1