summary refs log tree commit diff
diff options
context:
space:
mode:
authorMathieu Lirzin <mthl@gnu.org>2016-01-24 15:15:54 +0100
committerMathieu Lirzin <mthl@gnu.org>2016-01-28 16:31:38 +0100
commitf3044a4b7b4fd8b51a65c95bca1d22b252863dc9 (patch)
tree4f920d7b02aab983325e21afba61f5d962551bba
parent90ca91866821f387f50a14c356da7888193f3180 (diff)
downloadguix-f3044a4b7b4fd8b51a65c95bca1d22b252863dc9.tar.gz
lint: Rewrite 'check-patch-file-names'.
* guix/scripts/lint.scm (check-patch-file-names): Improve clarity by
reversing the logic.
-rw-r--r--guix/scripts/lint.scm29
1 files changed, 13 insertions, 16 deletions
diff --git a/guix/scripts/lint.scm b/guix/scripts/lint.scm
index 25f49a77af..e729398742 100644
--- a/guix/scripts/lint.scm
+++ b/guix/scripts/lint.scm
@@ -413,24 +413,21 @@ warning for PACKAGE mentionning the FIELD."
 (define (check-patch-file-names package)
   "Emit a warning if the patches requires by PACKAGE are badly named or if the
 patch could not be found."
-  (guard (c ((message-condition? c)               ;raised by 'search-patch'
+  (guard (c ((message-condition? c)     ;raised by 'search-patch'
              (emit-warning package (condition-message c)
                            'patch-file-names)))
-    (let ((patches   (and=> (package-source package) origin-patches))
-          (name      (package-name package)))
-      (when (and patches
-                 (any (match-lambda
-                        ((? string? patch)
-                         (let ((file (basename patch)))
-                           (not (eq? (string-contains file name) 0))))
-                        (_
-                         ;; This must be an <origin> or something like that.
-                         #f))
-                      patches))
-        (emit-warning package
-                      (_ "file names of patches should start with \
-the package name")
-                      'patch-file-names)))))
+    (unless (every (match-lambda        ;patch starts with package name?
+                     ((? string? patch)
+                      (and=> (string-contains (basename patch)
+                                              (package-name package))
+                             zero?))
+                     (_  #f))     ;must be an <origin> or something like that.
+                   (or (and=> (package-source package) origin-patches)
+                       '()))
+      (emit-warning
+       package
+       (_ "file names of patches should start with the package name")
+       'patch-file-names))))
 
 (define (escape-quotes str)
   "Replace any quote character in STR by an escaped quote character."