about summary refs log tree commit diff
path: root/src/libexpr
diff options
context:
space:
mode:
Diffstat (limited to 'src/libexpr')
-rw-r--r--src/libexpr/names.cc6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/libexpr/names.cc b/src/libexpr/names.cc
index 781c2b6468f9..c2b2733347f6 100644
--- a/src/libexpr/names.cc
+++ b/src/libexpr/names.cc
@@ -1,5 +1,6 @@
 #include "names.hh"
 #include "util.hh"
+#include "regex.hh"
 
 
 namespace nix {
@@ -32,7 +33,10 @@ DrvName::DrvName(const string & s) : hits(0)
 
 bool DrvName::matches(DrvName & n)
 {
-    if (name != "*" && name != n.name) return false;
+    if (name != "*") {
+        Regex regex(name);
+        if (!regex.matches(n.name)) return false;
+    }
     if (version != "" && version != n.version) return false;
     return true;
 }