From 14d0f82cab37b66e2998b8d0d664711bd1e1371b Mon Sep 17 00:00:00 2001
From: Martin Liska <mliska@suse.cz>
Date: Mon, 12 Dec 2022 13:24:25 +0100
Subject: [PATCH] mklog: do not parse binary file for PR entry

contrib/ChangeLog:

	* mklog.py: Do not search PR entry in a file that is binary.
---
 contrib/mklog.py | 34 ++++++++++++++++++----------------
 1 file changed, 18 insertions(+), 16 deletions(-)

diff --git a/contrib/mklog.py b/contrib/mklog.py
index 3a6ec681b658..358b7fc6b8b1 100755
--- a/contrib/mklog.py
+++ b/contrib/mklog.py
@@ -186,23 +186,25 @@ def generate_changelog(data, no_functions=False, fill_pr_titles=False,
             # contains commented code which a note that it
             # has not been tested due to a certain PR or DR.
             this_file_prs = []
-            for line in list(file)[0][0:10]:
-                m = pr_regex.search(line.value)
-                if m:
-                    pr = m.group('pr')
-                    if pr not in prs:
-                        prs.append(pr)
-                        this_file_prs.append(pr.split('/')[-1])
-                else:
-                    m = dr_regex.search(line.value)
+            if not file.is_binary_file:
+                for line in list(file)[0][0:10]:
+                    m = pr_regex.search(line.value)
                     if m:
-                        dr = m.group('dr')
-                        if dr not in prs:
-                            prs.append(dr)
-                            this_file_prs.append(dr.split('/')[-1])
-                    elif dg_regex.search(line.value):
-                        # Found dg-warning/dg-error line
-                        break
+                        pr = m.group('pr')
+                        if pr not in prs:
+                            prs.append(pr)
+                            this_file_prs.append(pr.split('/')[-1])
+                    else:
+                        m = dr_regex.search(line.value)
+                        if m:
+                            dr = m.group('dr')
+                            if dr not in prs:
+                                prs.append(dr)
+                                this_file_prs.append(dr.split('/')[-1])
+                        elif dg_regex.search(line.value):
+                            # Found dg-warning/dg-error line
+                            break
+
             # PR number in the file name
             fname = os.path.basename(file.path)
             m = pr_filename_regex.search(fname)
-- 
GitLab