Signed-off-by: Eric Engestrom <eric.engest...@imgtec.com>
---
 dim | 46 ++++++++++++++++++++++++++--------------------
 1 file changed, 26 insertions(+), 20 deletions(-)

diff --git a/dim b/dim
index 481a53e23035..2e22fefa8867 100755
--- a/dim
+++ b/dim
@@ -1970,6 +1970,31 @@ function email_get_name
        fi
 }
 
+function email_cc_in_latest_commit
+{
+       email="$1"
+       name="$2"
+
+       git show -s | grep -i "^    Cc:" | sed 's/^ *[Cc][Cc]: *//' | while 
read -r testcc; do
+               testemail="$(email_get_address "$testcc")"
+               testname="$(email_get_name "$testcc" | sed -e 
's/^[[:space:]]*//')"
+
+               if [ "$testemail" = "$email" ]; then
+                       return 1
+               fi
+
+               if [ -z "$testname" ] || [ -z "$name" ]; then
+                       continue
+               fi
+
+               if [ "$testname" = "$name" ]; then
+                       return 1
+               fi
+       done || return 0
+
+       return 1
+}
+
 function dim_add_missing_cc
 {
        if [ $(git cat-file -p HEAD | grep -cE ^parent) -ne 1 ]; then
@@ -1987,26 +2012,7 @@ function dim_add_missing_cc
                        continue
                fi
 
-               # Variables from the while loop don't propagate,
-               # print out a 1 on success
-               matches=$(
-                       git show -s | grep -i "^    Cc:" | sed 's/^ *[Cc][Cc]: 
*//' | while read testcc; do
-                               testemail="$(email_get_address "$testcc")"
-
-                               if [ "$testemail" != "$email" ]; then
-                                       if [ -z "$name" ]; then continue; fi
-
-                                       testname="$(email_get_name "$testcc" | 
sed -e 's/^[[:space:]]*//')"
-
-                                       if [ "$testname" != "$name" ]; then 
continue; fi
-                               fi
-
-                               echo 1
-                               break
-                       done
-               )
-
-               if [ -z "$matches" ]; then
+               if ! email_cc_in_latest_commit "$email" "$name"; then
                        $DRY dim_commit_add_tag "Cc: ${cc}"
                fi
        done
-- 
Cheers,
  Eric

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to