+    eval {
+        $regex =~ s{
+            (\*) |
+            (\?) |
+            ([^*?\\]+) |
+            (\\[\\*?]) |
+            (.+)
+        }{
+            if (defined $1) {
+                '.*';
+            } elsif (defined $2) {
+                '.'
+            } elsif (defined $3) {
+                quotemeta($3);
+            } elsif (defined $4) {
+                $4;

Shouldn't this be quotemeta'ed as well? Otherwise "file.png" would become eqv. to "file?png".

I don't think so. If $4 is defined, it's equal to \\, \* or \?, which don't need further escaping.

--
Jakub Wilk


--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to