git: 6a720fb95a1b - main - git-arc: Fix handling of review title containing double quotes
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Tue, 04 Oct 2022 17:06:20 UTC
The branch main has been updated by markj:
URL: https://cgit.FreeBSD.org/src/commit/?id=6a720fb95a1bc39c6417fa6200789edfe99d5256
commit 6a720fb95a1bc39c6417fa6200789edfe99d5256
Author: Mark Johnston <markj@FreeBSD.org>
AuthorDate: 2022-10-04 16:59:13 +0000
Commit: Mark Johnston <markj@FreeBSD.org>
CommitDate: 2022-10-04 17:05:54 +0000
git-arc: Fix handling of review title containing double quotes
---
tools/tools/git/git-arc.sh | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/tools/tools/git/git-arc.sh b/tools/tools/git/git-arc.sh
index 22a13aa307bd..a9faed2ea876 100644
--- a/tools/tools/git/git-arc.sh
+++ b/tools/tools/git/git-arc.sh
@@ -193,7 +193,7 @@ title2diff()
{
local title
- title=$1
+ title=$(echo $1 | sed 's/"/\\"/g')
# arc list output always includes ANSI escape sequences, strip them.
arc list | sed 's/\x1b\[[0-9;]*m//g' | \
awk -F': ' '{
@@ -422,7 +422,8 @@ gitarc__list()
# differently and keep the entire status.
title=$(git show -s --format=%s "$commit")
diff=$(echo "$openrevs" | \
- awk -F'D[1-9][0-9]*:\.\\[m ' '{if ($2 == "'"$title"'") print $0}')
+ awk -F'D[1-9][0-9]*:\.\\[m ' \
+ '{if ($2 == "'"$(echo $title | sed 's/"/\\"/g')"'") print $0}')
if [ -z "$diff" ]; then
echo "No Review : $title"
elif [ "$(echo "$diff" | wc -l)" -ne 1 ]; then