Mesa (master): bin/get-fixes-pick-list.sh: better identify multiple "fixes :" tags

Andres Gomez tanty at kemper.freedesktop.org
Thu Jun 15 12:53:43 UTC 2017


Module: Mesa
Branch: master
Commit: 5d87667fed1bd5ab850abdfb3a10db8c8c21c330
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=5d87667fed1bd5ab850abdfb3a10db8c8c21c330

Author: Andres Gomez <agomez at igalia.com>
Date:   Sat May 13 03:11:08 2017 +0300

bin/get-fixes-pick-list.sh: better identify multiple "fixes:" tags

We were not considering as multiple fixes lines with:
Fixes: $sha_1, Fixes: $sha_2

Now, we split the lines so we will consider them individually, as in:
Fixes: $sha_1,
Fixes: $sha_2

Additionally, we try to get the SHA from split lines so:
Fixes:
$sha_1

Will be considered as:
Fixes: $sha_1

v2:
 - Treat empty spaces earlier in fix lines (Emil)
 - Fold 2 lines into one to gather fix commit ids (Emil)

Signed-off-by: Andres Gomez <agomez at igalia.com>
Reviewed-by: Emil Velikov <emli.velikov at collabora.com>

---

 bin/get-fixes-pick-list.sh | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

diff --git a/bin/get-fixes-pick-list.sh b/bin/get-fixes-pick-list.sh
index f9afcc49ce..fb7ef22382 100755
--- a/bin/get-fixes-pick-list.sh
+++ b/bin/get-fixes-pick-list.sh
@@ -36,14 +36,17 @@ do
 		continue
 	fi
 
+	# Place every "fixes:" tag on its own line and join with the next word
+	# on its line or a later one.
+	fixes=`git show -s $sha | tr -d "\n" | sed -e 's/fixes:[[:space:]]*/\nfixes:/Ig' | grep "fixes:" | sed -e 's/\(fixes:[a-zA-Z0-9]*\).*$/\1/'`
+
 	# For each one try to extract the tag
-	fixes_count=`git show -s $sha | grep -i "fixes:" | wc -l`
+	fixes_count=`echo "$fixes" | wc -l`
 	warn=`(test $fixes_count -gt 1 && echo $fixes_count) || echo 0`
 	while [ $fixes_count -gt 0 ] ; do
-		fixes=`git show -s $sha | grep -i "fixes:" | tail -n $fixes_count`
+		# Treat only the current line
+		id=`echo "$fixes" | tail -n $fixes_count | head -n 1 | cut -d : -f 2`
 		fixes_count=$(($fixes_count-1))
-		# The following sed/cut combination is borrowed from GregKH
-		id=`echo ${fixes} | sed -e 's/^[ \t]*//' | cut -f 2 -d ':' | sed -e 's/^[ \t]*//' | cut -f 1 -d ' '`
 
 		# Bail out if we cannot find suitable id.
 		# Any specific validation the $id is valid and not some junk, is




More information about the mesa-commit mailing list