@@ -20,20 +20,27 @@ RET=0
20
20
PREV_BRANCH=` git name-rev --name-only HEAD`
21
21
PREV_HEAD=` git rev-parse HEAD`
22
22
for i in ` git rev-list --reverse $1 ` ; do
23
- git rev-list -n 1 --pretty=" %s" $i | grep -q " ^scripted-diff:" || continue
24
- git checkout --quiet $i ^ || exit
25
- SCRIPT=" ` git rev-list --format=%b -n1 $i | sed ' /^-BEGIN VERIFY SCRIPT-$/,/^-END VERIFY SCRIPT-$/{//!b};d' ` "
26
- if test " x$SCRIPT " = " x" ; then
27
- echo " Error: missing script for: $i "
28
- echo " Failed"
29
- RET=1
30
- else
31
- echo " Running script for: $i "
32
- echo " $SCRIPT "
33
- eval " $SCRIPT "
34
- git --no-pager diff --exit-code $i && echo " OK" || (echo " Failed" ; false) || RET=1
23
+ if git rev-list -n 1 --pretty=" %s" $i | grep -q " ^scripted-diff:" ; then
24
+ git checkout --quiet $i ^ || exit
25
+ SCRIPT=" ` git rev-list --format=%b -n1 $i | sed ' /^-BEGIN VERIFY SCRIPT-$/,/^-END VERIFY SCRIPT-$/{//!b};d' ` "
26
+ if test " x$SCRIPT " = " x" ; then
27
+ echo " Error: missing script for: $i "
28
+ echo " Failed"
29
+ RET=1
30
+ else
31
+ echo " Running script for: $i "
32
+ echo " $SCRIPT "
33
+ eval " $SCRIPT "
34
+ git --no-pager diff --exit-code $i && echo " OK" || (echo " Failed" ; false) || RET=1
35
+ fi
36
+ git reset --quiet --hard HEAD
37
+ else
38
+ if git rev-list " --format=%b" -n1 $i | grep -q ' ^-\(BEGIN\|END\)[ a-zA-Z]*-$' ; then
39
+ echo " Error: script block marker but no scripted-diff in title"
40
+ echo " Failed"
41
+ RET=1
42
+ fi
35
43
fi
36
- git reset --quiet --hard HEAD
37
44
done
38
45
git checkout --quiet $PREV_BRANCH 2> /dev/null || git checkout --quiet $PREV_HEAD
39
46
exit $RET
0 commit comments