summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorrubidium <rubidium@openttd.org>2008-10-22 22:07:43 +0000
committerrubidium <rubidium@openttd.org>2008-10-22 22:07:43 +0000
commit428de2d302731ded918515440f7a2d2db668f69e (patch)
treec2c6d8164fc0accefe659742c7e50e47b3d85112
parent02cbe4775417d8de9fd85b259c7a799abd4a3164 (diff)
downloadopenttd-428de2d302731ded918515440f7a2d2db668f69e.tar.xz
(svn r14519) -Fix [FS#2376]: do not use the short hash form for getting a specific mercurial/git revision as those can collide quite easily causing reversion detection to fail (PhilSophus)
-rwxr-xr-xfindversion.sh8
1 files changed, 4 insertions, 4 deletions
diff --git a/findversion.sh b/findversion.sh
index 93b4776ae..013d0463d 100755
--- a/findversion.sh
+++ b/findversion.sh
@@ -82,8 +82,8 @@ elif [ -d "$ROOT_DIR/.git" ]; then
if [ -n "`git diff-index HEAD \"$SRC_DIR\"`" ]; then
MODIFIED="2"
fi
- HASH=`LC_ALL=C git rev-parse --verify HEAD 2>/dev/null | cut -c1-8`
- REV="g$HASH"
+ HASH=`LC_ALL=C git rev-parse --verify HEAD 2>/dev/null`
+ REV="g`echo $HASH | cut -c1-8`"
BRANCH=`git branch|grep '[*]' | sed 's~\* ~~;s~^master$~~'`
REV_NR=`LC_ALL=C git log --pretty=format:%s "$SRC_DIR" | grep "^(svn r[0-9]*)" | head -n 1 | sed "s~.*(svn r\([0-9]*\)).*~\1~"`
elif [ -d "$ROOT_DIR/.hg" ]; then
@@ -91,8 +91,8 @@ elif [ -d "$ROOT_DIR/.hg" ]; then
if [ -n "`hg status \"$SRC_DIR\" | grep -v '^?'`" ]; then
MODIFIED="2"
fi
- HASH=`LC_ALL=C hg parents 2>/dev/null | head -n 1 | cut -d: -f3 | cut -c1-8`
- REV="h$HASH"
+ HASH=`LC_ALL=C hg parents 2>/dev/null | head -n 1 | cut -d: -f3`
+ REV="h`echo $HASH | cut -c1-8`"
BRANCH=`hg branch | sed 's~^default$~~'`
REV_NR=`LC_ALL=C hg log -r $HASH:0 -k "svn" -l 1 --template "{desc}\n" "$SRC_DIR" | grep "^(svn r[0-9]*)" | head -n 1 | sed "s~.*(svn r\([0-9]*\)).*~\1~"`
else