From 401a744f49a85dd626b84caa99d6e5e041038d83 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonas=20H=C3=B6ppner?= <jonas.hoeppner@garz-fricke.com> Date: Tue, 13 Sep 2022 12:46:00 +0200 Subject: [PATCH] fng-install: Improve error detection when resolving 'gitlab' links --- recipes-bsp/fng-install/common/fnginstall-common.sh | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/recipes-bsp/fng-install/common/fnginstall-common.sh b/recipes-bsp/fng-install/common/fnginstall-common.sh index 5e68cb0b..d16551d5 100644 --- a/recipes-bsp/fng-install/common/fnginstall-common.sh +++ b/recipes-bsp/fng-install/common/fnginstall-common.sh @@ -966,12 +966,12 @@ do_load() resolving_link=false CURL_SOURCE="$1" if [ -z "$2" ];then - CURL_TARGET="-O" CURL_TARGET_FILE="${1##*/}" else - CURL_TARGET="-o|$2" CURL_TARGET_FILE="$2" fi + CURL_TARGET="-o|$CURL_TARGET_FILE" + while true;do OLDIFS=$IFS;IFS='|' # shellcheck disable=2086 @@ -981,11 +981,12 @@ do_load() if [ "$ret" -eq 0 ];then # Handle the 'links' returned by gitlab, actually textfiles containing the real name. # if we got a 'zeroline' text file (one line, no line ending), it is probably a 'link' + if [ ! -r "$CURL_TARGET_FILE" ];then + return 1 + fi if [ "$( head "$CURL_TARGET_FILE" | wc -l)" -eq 0 ];then resolving_link=true HEADER=$( head -n 1 "$CURL_TARGET_FILE") - CURL_TARGET_BASENAME="${CURL_TARGET_FILE##*/}" - CURL_TARGET_BASENAME="${CURL_TARGET_BASENAME%.*}" CURL_SOURCE="$(dirname "$CURL_SOURCE")/$HEADER" # Keep the current download mv "$CURL_TARGET_FILE" "$CURL_TARGET_FILE.bak" -- GitLab