From ef04d631bdfa6bb5c67efc92a1cd43847a111001 Mon Sep 17 00:00:00 2001 From: Hartmut Goebel Date: Fri, 24 Oct 2025 20:18:04 +0200 Subject: [PATCH] etc: committer: Fix crashes when inputs only change order. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * etc/committer.scm.in (change-commit-message): Fix handling when package inputs are the same but in different order. Change-Id: I8760a7c8fb57c82d657b239a50c973ba81f9781f Signed-off-by: Ludovic Courtès --- etc/committer.scm.in | 33 +++++++++++++++++---------------- 1 file changed, 17 insertions(+), 16 deletions(-) diff --git a/etc/committer.scm.in b/etc/committer.scm.in index 5a6532fd723..bde26afa991 100755 --- a/etc/committer.scm.in +++ b/etc/committer.scm.in @@ -303,22 +303,23 @@ corresponding to the top-level definition containing the staged changes." (or (equal? old-values new-values) (let ((removed (lset-difference equal? old-values new-values)) (added (lset-difference equal? new-values old-values))) - (format port - "[~a]: ~a~%" field - (break-string - ;; A dependency can be a list of (pkg output). - (match (list (map object->string removed) - (map object->string added)) - ((() added) - (format #f "Add ~a." - (listify added))) - ((removed ()) - (format #f "Remove ~a." - (listify removed))) - ((removed added) - (format #f "Remove ~a; add ~a." - (listify removed) - (listify added)))))))))) + (unless (and (null? added) (null? removed)) + (format port + "[~a]: ~a~%" field + (break-string + ;; A dependency can be a list of (pkg output). + (match (list (map object->string removed) + (map object->string added)) + ((() added) + (format #f "Add ~a." + (listify added))) + ((removed ()) + (format #f "Remove ~a." + (listify removed))) + ((removed added) + (format #f "Remove ~a; add ~a." + (listify removed) + (listify added))))))))))) '(inputs propagated-inputs native-inputs))) (define* (add-commit-message file-name variable-name