summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorrofl0r <rofl0r@users.noreply.github.com>2020-09-06 19:58:21 +0100
committerrofl0r <rofl0r@users.noreply.github.com>2020-09-06 20:04:01 +0100
commitf1a6d063b0bf0ca98e0578482b1541907a78bb3a (patch)
tree088b99594737dc6d1c990684b25b9dc611c08efe
parent0d26fab3172453cc5fed4c3a9b01cc2d66baec3c (diff)
version.sh: fix empty result when git describe fails
fixes an error in travis, which makes a shallow clone of 50 commits. if the last tag is older than 50 commits, we get: "fatal: No names found, cannot describe anything." this caused a premature exit due to an assert error in safe_write() on this line: assert (count > 0); because the version variable in tinyproxy was empty.
-rwxr-xr-xscripts/version.sh8
1 files changed, 6 insertions, 2 deletions
diff --git a/scripts/version.sh b/scripts/version.sh
index 9a965dc..f3948bc 100755
--- a/scripts/version.sh
+++ b/scripts/version.sh
@@ -5,8 +5,12 @@ GIT_DIR="${SCRIPT_DIR}/../.git"
if test -d "${GIT_DIR}" ; then
if type git >/dev/null 2>&1 ; then
- git describe --match '[0-9]*.[0-9]*.[0-9]*' 2>/dev/null \
- | sed -e 's/-/-git-/'
+ gitstr=$(git describe --match '[0-9]*.[0-9]*.[0-9]*' 2>/dev/null)
+ if test "x$?" != x0 ; then
+ sed 's/$/-git/' < VERSION
+ else
+ printf "%s\n" "$gitstr" | sed -e 's/-/-git-/'
+ fi
else
sed 's/$/-git/' < VERSION
fi