about summary refs log tree commit diff
path: root/Src/options.c
diff options
context:
space:
mode:
Diffstat (limited to 'Src/options.c')
-rw-r--r--Src/options.c15
1 files changed, 12 insertions, 3 deletions
diff --git a/Src/options.c b/Src/options.c
index 693132494..bfe146e1e 100644
--- a/Src/options.c
+++ b/Src/options.c
@@ -522,11 +522,20 @@ bin_setopt(char *nam, char **args, char *ops, int isun)
 	/* Globbing option (-m) set. */
 	while (*args) {
 	    Comp com;
+	    char *s, *t;
+
+	    t = s = dupstring(*args);
+	    while (*t)
+		if (*t == '_')
+		    chuck(t);
+		else {
+		    *t = tulower(*t);
+		    t++;
+		}
 
 	    /* Expand the current arg. */
-	    tokenize(*args);
-	    if (!(com = parsereg(*args))) {
-		untokenize(*args);
+	    tokenize(s);
+	    if (!(com = parsereg(s))) {
 		zwarnnam(nam, "bad pattern: %s", *args, 0);
 		continue;
 	    }