From 8ab452d5877638a97e5bdd521d119403b70b45f5 Mon Sep 17 00:00:00 2001 From: Dmitry Torokhov Date: Mon, 21 Oct 2019 20:09:56 -0700 Subject: [PATCH] patman: separate emails in CC list with NULs There is a contributor in Linux kernel with a comma in their name, which confuses patman and results in invalid to- or cc- addresses on some patches. To avoid this, let's use \0 as a separator when generating cc file. Signed-off-by: Dmitry Torokhov Reviewed-by: Simon Glass --- tools/patman/func_test.py | 4 ++-- tools/patman/patman.py | 2 +- tools/patman/series.py | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/tools/patman/func_test.py b/tools/patman/func_test.py index 50a2741439..2321f9e028 100644 --- a/tools/patman/func_test.py +++ b/tools/patman/func_test.py @@ -198,9 +198,9 @@ class TestFunctional(unittest.TestCase): line += 4 self.assertEqual(expected, tools.ToUnicode(lines[line])) - self.assertEqual(('%s %s, %s' % (args[0], rick, stefan)), + self.assertEqual(('%s %s\0%s' % (args[0], rick, stefan)), tools.ToUnicode(cc_lines[0])) - self.assertEqual(('%s %s, %s, %s, %s' % (args[1], fred, ed, rick, + self.assertEqual(('%s %s\0%s\0%s\0%s' % (args[1], fred, ed, rick, stefan)), tools.ToUnicode(cc_lines[1])) expected = ''' diff --git a/tools/patman/patman.py b/tools/patman/patman.py index 9605a36eff..0187ebe1d4 100755 --- a/tools/patman/patman.py +++ b/tools/patman/patman.py @@ -112,7 +112,7 @@ elif options.cc_cmd: for line in fd.readlines(): match = re_line.match(line) if match and match.group(1) == args[0]: - for cc in match.group(2).split(', '): + for cc in match.group(2).split('\0'): cc = cc.strip() if cc: print(cc) diff --git a/tools/patman/series.py b/tools/patman/series.py index 67103f03e6..d667d9b6d6 100644 --- a/tools/patman/series.py +++ b/tools/patman/series.py @@ -243,13 +243,13 @@ class Series(dict): if limit is not None: cc = cc[:limit] all_ccs += cc - print(commit.patch, ', '.join(sorted(set(cc))), file=fd) + print(commit.patch, '\0'.join(sorted(set(cc))), file=fd) self._generated_cc[commit.patch] = cc if cover_fname: cover_cc = gitutil.BuildEmailList(self.get('cover_cc', '')) cover_cc = [tools.FromUnicode(m) for m in cover_cc] - cc_list = ', '.join([tools.ToUnicode(x) + cc_list = '\0'.join([tools.ToUnicode(x) for x in sorted(set(cover_cc + all_ccs))]) print(cover_fname, cc_list.encode('utf-8'), file=fd) -- 2.39.5