diff --git a/src/cuirass/database.scm b/src/cuirass/database.scm
index 751b8ef5e05cec53facd03df324f2d8a6deda329..147028edaecd621b42510d9900c6d7e64613c937 100644
--- a/src/cuirass/database.scm
+++ b/src/cuirass/database.scm
@@ -373,12 +373,13 @@ FILTERS is an assoc list which possible keys are 'project | 'jobset | 'job |
 
   ;; XXX Change caller and remove
   (define (assqx-ref filters key)
-    (if (null? filters)
-        #f
-        (match (car filters)
-         ((xkey xvalue) (if (eq? key xkey)
-                            xvalue
-                            (assqx-ref (cdr filters) key))))))
+    (match filters
+      (()
+       #f)
+      (((xkey xvalue) rest ...)
+       (if (eq? key xkey)
+           xvalue
+           (assqx-ref rest key)))))
 
   (define (format-output name path)
    `(,name . ((#:path . ,path))))